数据采集技术 课件 任务5.2 编写Spider脚本任务_第1页
数据采集技术 课件 任务5.2 编写Spider脚本任务_第2页
数据采集技术 课件 任务5.2 编写Spider脚本任务_第3页
数据采集技术 课件 任务5.2 编写Spider脚本任务_第4页
数据采集技术 课件 任务5.2 编写Spider脚本任务_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

编写spider脚本任务

——数据采集技术

项目采集目标01020304知识点使用Scrapy的Item类封装数据编写spider脚本任务字段验证项目采集目标01

项目采集目标项目采集的目标数据是数字教材_人大芸窗数字教材(/szjc/Index.html)中课程推荐的教材名称、作者、ISBN号码,具体如下图所示。使用Scrapy的Item类封装数据02我们一般需要定义一个继承自scrapy.Item的子类,并在该子类中添加类型为scrapy.Filed的类属性。每个类属性代表要采集的数据字段,如我们提到的教材名称、作者、ISBN号码都对应一个字段。在Pycharm中打开rdyc_spider目录下的items.py文件,可以看到Scrapy框架已经在items.py文件中自动生成了继承自scrapy.Item的RdycSpiderItem类,初始代码如下:

使用Scrapy的Item类封装数据#Defineherethemodelsforyourscrapeditems

#

#Seedocumentationin:

#/en/latest/topics/items.html

importscrapy

classRdycSpiderItem(scrapy.Item):

#definethefieldsforyouritemherelike:

#name=scrapy.Field()

pass编写spider脚本任务03

修改RdycSpiderItem类Spider是Scrapy中用于定义爬取行为的核心组件,此时开始编写spider脚本任务,只需在RdycSpiderItem类中添加三个属性,分别为title、author、isbn,分别代表教材的名称、作者及ISBN号码。修改后的RdycSpiderItem类的代码如下:#Defineherethemodelsforyourscrapeditems

#

#Seedocumentationin:

#/en/latest/topics/items.html

importscrapy

classRdycSpiderItem(scrapy.Item):

#definethefieldsforyouritemherelike:

#name=scrapy.Field()

#教材名称

title=scrapy.Field()

#教材作者

author=scrapy.Field()

#ISBN号码

isbn=scrapy.Field()

#pass字段验证04

字段验证添加完这三个字段后,爬虫程序只能爬取这三个字段的数据。如果字段名称写错了或者写了额外的字段,程序会报错。我们可以通过以下方式进行验证:在PyCharm中,右击rdyc_spider目录下的items.py文件,选择“打开于终端”,输入python进入Python交互环境。

字段验证正确输入字段:当输入正确的教材名称,例如《朝花夕拾》,如果代码没有问题,不会显示任何错误信息。这表明程序能够正常处理我们定义的字段数据。

字段验证写错字段:若将title字段写成tite,程序会输出KeyError错误进行提示。这是因为在RdycSpiderItem类中并没有定义tite这个字段,程序无法识别该字段,从而抛出错误。增加额外字段:如果增加额外字段,如year字段,同样会输出KeyError

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论