wordpress 响应式 企业网站房地产网站广告销售怎么做

news/2025/9/24 2:04:02/文章来源:
wordpress 响应式 企业网站,房地产网站广告销售怎么做,好的学校网站设计,爱站网自媒体数据1 目标站点分析 抓取网站#xff1a;http://quotes.toscrape.com/ 主要显示了一些名人名言#xff0c;以及作者、标签等等信息#xff1a; 点击next#xff0c;page变为2#xff1a; 2 流程框架 抓取第一页#xff1a;请求第一页的URL并得到源代码#xff0c;进行下…1 目标站点分析 抓取网站http://quotes.toscrape.com/ 主要显示了一些名人名言以及作者、标签等等信息 点击nextpage变为2 2 流程框架 抓取第一页请求第一页的URL并得到源代码进行下一步分析。获取内容和下一页链接分析源代码提取首页内容获取下一页链接等待进一步爬取。翻页爬取请求下一页信息分析内容并请求再下一页链接。保存爬取内容将爬取结果保存为特定格式如文本数据库。 3 代码实战 新建一个项目 scrapy startproject quotetutorial创建一个spider(名为quotes) 使用pycharm来打开已经在本地生成的项目 scrapy.cfg:配置文件 items.py:保存数据的数据结构 middlewares.py:爬取过程中定义的一些中间件可以用来处理RequestResponse以及Exceptions等操作也可以用来修改Request, Response等相关的配置 pipelines.py:项目管道可以用来输出一些items settings.py:定义了许多配置信息 quotes.py:主要的运行代码 执行这个爬虫程序: 可以看到控制台中打印出了许多调试信息可以看出它和普通的爬虫不太一样Scrapy提供了很多额外的输出。 抓取第一页 1.更改QuotesSpider这个类,通过css选中quote这个区块 def parse(self, response):quotes response.css(.quote)for quote in quotes:text quote.css(.text::text).extract_first()author quote.css(.author::text).extract_first()tags quote.css(.tags . tag::text).extract()这样的解析方法和pyquery非常相似 .text :指的是标签的class. ::text :是Scrapy特有的语法结构表示输出标签里面的文本内容. extract_first() :方法表示获取第一个内容. extract :会把所有结果都找出来类似于find和findall). 说明Scrapy还为我们提供了一个非常强大的工具–shell在命令行中输入“scrapy shell quotes.toscrape.com”可以进入命令行交互模式 例如直接输入response回车后会直接执行这条语句。 试试刚才写的方法的效果先查看“response.css(’.quote’)”的输出 这是一个list类型的数据里面的内容是Selector选择器查看第一个结果此时若直接输入quotes会报错。 先执行quotes response.css(‘.quote’)然后quotes[0]。 .text和.text::text的区别data数据的输出和不输出 2.借助Scrapy提供的“items.py”定义统一的数据结构指定一些字段之类的将爬取到的结果作为一个个整体存下来。根据提示更改文件如下 3. 要在parse方法中调用我们刚才定义的items将提取出的网页信息存储到item然后调用yield方法将item生成出来。 获取内容和下一页链接 import scrapy from quotetutorial.items import QuotetutorialItemclass QuotesSpider(scrapy.Spider):name quotesallowed_domains [quotes.toscrape.com]start_urls [https://quotes.toscrape.com]def parse(self, response):quotes response.css(.quote)for quote in quotes:item QuotetutorialItem()text quote.css(.text::text).extract_first()author quote.css(.author::text).extract_first()tags quote.css(.tags .tag::text).extract()item[text] textitem[author] authoritem[tags] tagsyield itemnext response.css(.pager .next a::attr(href)).extract_first()url response.urljoin(next)yield scrapy.Request(urlurl, callbackself.parse)最后调用Request第一个参数就是要请求的url第二个参数“callback”是回调函数的意思也就是请求之后得到的response由谁来处理这里我们还是调用parse因为parse方法就是用来处理索引页的这就相当于完成了一个递归的调用可以一直不断地调用parse方法获取下一页的链接并对访问得到的信息进行处理。 再次重新运行程序可以看到输出了10页的内容这是因为该网站只有10页内容 保存爬取到的信息 在原来的命令后面增加“-o 文件名称.json”爬取完成后就会生成一个“quotes.json”文件把获取到的信息保存成了标准的json格式。 scrapy crawl quotes -o quotes.jsonScrapy还提供了其它存储格式比如“jl”格式在命令行输入如下命令就可以得到jl格式文件。相比于json格式它没有了最前面和最后面的的大括号每条数据独占一行 scrapy crawl quotes -o quotes.jl或者保存成csv格式 scrapy crawl quotes -o quotes.csv它还支持xml、pickle和marshal等格式。 Scrapy还提供了一种远程ftp的保存方式可以将爬取结果通过ftp的形式进行保存例如 scrapy crawl quotes -o ftp://user:passftp.example.com/path/quotes.csv数据处理 在将爬取到的内容进行保存之前还需要对item进行相应的处理因为在解析完之后有一些item可能不是我们想要的或者我们想把item保存到数据库里面就需要借助Scrapy的Pipeline工具。 更改pipelines.py文件 # Define your item pipelines here # # Dont forget to add your pipeline to the ITEM_PIPELINES setting # See: https://docs.scrapy.org/en/latest/topics/item-pipeline.html# useful for handling different item types with a single interface from itemadapter import ItemAdapter from scrapy.exceptions import DropItem import pymongoclass TextPipeline:def __init__(self):self.limit 50def process_item(self, item, spider):if item[text]:if len(item[text]) self.limit:item[text] item[text][0:self.limit].rstrip() ...return itemelse:return DropItem(Missing Text)class MongoPipeline(object):def __init__(self, mongo_uri, mongo_db):self.mongo_uri mongo_uriself.mongo_db mongo_dbclassmethoddef from_crawler(cls, crawler):return cls(mongo_uricrawler.settings.get(MONGO_URI),mongo_dbcrawler.settings.get(MONGO_DB))def open_spider(self, spider):self.client pymongo.MongoClient(self.mongo_uri)self.db self.client[self.mongo_db]def process_item(self, item, spider):name item.__class__.__name__self.db[quotes].insert(dict(item))return itemdef close_spider(self, spider):self.client.close()更改setting: MONGO_URI localhost MONGO_DB quotestutorialpipeline似乎没生效要想让pipeline生效需要在settings里面指定pipeline。 后面的序号300和400这样代表pipeline运行的优先级顺序序号越小表示优先级越高会优先进行调用。 MONGO_URI localhost MONGO_DB quotestutorialITEM_PIPELINES {quotetutorial.pipelines.TextPipeline: 300,quotetutorial.pipelines.MongoPipeline: 400, }将程序写好后我们可以再次运行命令行输入“scrapy crawl quotes”可以看到输出的text过长的话后面就被省略号代替了同时数据也被存入了MongoDB数据库。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/914552.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

移动网站有哪些工程建设国家标准网站

点击上方蓝色“后端面试那些事儿”,选择“设为星标”学最好的别人,做最好的我们来源:R 大zhihu.com/question/38511221问题:R大回复平时有逛知乎的习惯,一般对JVM相关话题比较感兴趣。偶然看到这个问题,结果…

做网站下载功能wordpress ios源码

cli命令行界面 demo本系列的第一篇 有关使用Java解析命令行参数的文章介绍了Apache Commons CLI库。 这是本系列中介绍的基于Java的命令行解析库中最古老的,而且可能是最常用的之一。 Apache Commons CLI确实显示了它的时代,特别是与一些更现代的基于Jav…

甘肃省建设工程安全质量监督管理局网站官网台州建网站

Go包的引入: 包名前面加匿名,只引入但不使用,如果对应包有init函数,会执行init函数(初始化操作) 包名前面加. 把这个包的结构体和方法导入当前包,慎用,你不知道当前包和被引入的包用…

架设moon节点

架设moon节点C:\Users\Kang\AppData\Roaming\Microsoft\Windows\Themes\CachedFiles *** Success! You are ZeroTier address [ xxxxxxxxx]. 安装 ZeroTier 服务端curl -s https://install.zerotier.com | sudo bashsu…

可以注册的网站夜晚直播

内联函数 内联(inline)函数是MATLAB 7以前经常使用的一种构造函数对象的方法。在命令窗口、程序或函数中创建局部函数时,通过使用inline构造函数,而不用将其储存为一个M文件,同时又可以像使用一般函数那样调用它。 MA…

怎样做月嫂网站软件商店oppo官方下载

最近想实现一个Android直播,但是对于这方面的资料都比较零碎,一开始是打算用ffmpeg来实现编码推流,在搜集资料期间,找到了几个强大的开源库,直接避免了jni的代码,集成后只用少量的java代码就可实现编码、推…

个人网站开发赚钱方向公众号做微网站吗

size()和max()中的含义 以前我理解axis0代表行,axis1代表列; 但是这种含义在函数size()和max()中恰恰相反; 其实不是这样的,我们回到单词axis本身,它的意思是“轴”,没错轴就是代表一个方向,像…

简洁中文网站模板wordpress静态生成页面

文章目录 柯里化函数是什么逐步理解柯里化函数 柯里化函数是什么 柯里化(Currying)函数,又称部分求值,是一种函数转换技术。这种技术将一个接受多个参数的函数转换为一系列接受单一参数的函数。具体来说,一个柯里化的…

WordPress会员VIP购买没有文字的网站怎么优化

文章大纲 马赛克几种OpenCV 实现马赛克的方法高斯模糊pose estimation 定位并模糊:三角形的外接圆与膨胀系数实现实现代码实现效果参考文献与学习路径之前写过一个文章记录,怎么对人进行目标检测后打码,但是人脸识别有个问题是,很多人的背影,或者侧面无法识别出来人脸,那…

vscode 网站开发教程怎么设置wordpress头像

(给CPP开发者加星标,提升C/C技能)作者:C语言与CPP编程 / 自成一派123(本文来自作者投稿)1为什么使用指针假如我们定义了 char a’A’ ,当需要使用 ‘A’ 时,除了直接调用变量 a ,还可以定义 char *p&a &#xff0c…

哪一个平阳网站建设搜索引擎的关键词优化

一、下载安装 https://code.visualstudio.com/ 二、安装插件 三、使用 ①、创建一个空目录 ②、利用vscode工具打开该目录 ③、将该目录设置为工作区 在工作区中添加文件,还可以进行浏览器访问(提前安装了Live Server插件) 为工具…

移动电子商务网站建设网站会员系统模板

本文转载自公众号:浙大KG。 论文题目:Meta-Learning with Dynamic-Memory-Based Prototypical Network for Few-Shot Event Detection本文作者:邓淑敏,浙江大学在读博士,研究方向为低资源条件下知识图谱自动化构建关键…

网站建设开发制作苏州优化亚当

思路 我们首先要知道数据中,哪两列能够体现父子级我们需要找到最顶层父 id 是什么,因为只有知道最顶层的父 id,我们才能进行递归我们要在不改变数据的原有结构下,而转换为 Tree 结构,那么就需要创建新的结构 代码 /…

如何选择网站开发语言企业信用信息查询系统官网(全国)

快速流媒体 当Java 8最终问世时,我和一些大学开始了一个开源项目,以利用Java 8的流库使整个Java / DB问题进一步向前发展,以便将数据库表视为纯Java 8流。 速度诞生了! 哇,现在我们可以做类型安全的数据库应用程序了&a…

手机精品网站建设取消wordpress激活邮件

一 fgets(resource $stream, ?int $length null) 从文件指针中读取一行。 返回字符串,如果文件指针中没有更多的数据了则返回 false。错误发生时返回 false。 $stream 为文件资源,必须指向fopen()或fscokopen()成功打开的文件。文件打开之后&#x…

制作营销网站公司英才网

背景: 在分布式中,最难解决的一个问题就是多个节点间数据同步问题。为了解决这样的问题,涌现出了各种奇思妙想。只有在解决了如何进行信息同步的基础之上才衍生出形形色色的应用。这里开始介绍几种分布式通信协议。 简单即有效——totem协议:…

网站建设案例步骤房产网站排行

循环结构 1.1遍历循环结构for 1.1.1遍历循环for (1)遍历循环for的语句结构: for 循环遍历 in 遍历对象: 语句块 程序执行: (2)示例: #遍历字符串 for i in hello:print(i) #range()函数,python中的内…

仙居网站建设贴吧百度一下手机版网页

Jdk 1.8 for mac 详细安装教程(含版本切换) 官网下载链接 https://www.oracle.com/cn/java/technologies/downloads/#java8-mac 一、选择我们需要安装的jdk版本,这里以jdk8为例,下载 macOS 版本,M芯片下载ARM64版本…

网站建设公司六安旅游景点网页设计作品

【React】前端项目引入阿里图标 方式11、登录自己的iconfont-阿里巴巴矢量图标库,把需要的图标加入到自己的项目中去;2、加入并进入到项目中去选择Font class 并下载到本地3、得到的文件夹如下4. 把红框中的部分粘贴到自己的项目中(public 文…

wordpress手机端网站模板下载商城网站建设如何交谈

高斯金字塔和拉普拉斯金字塔【1】在图像相关领域应用广泛,尤其是图像融合和图像分割方面。本文从理论和opencv实现两个方面对两种金字塔进行了介绍,并给出了二者的视觉效果。1、高斯金字塔在计算机视觉与图像处理相关任务中,经常需要使用同一…