Scrapy动态创建Item

若项目没有定义Item or 想动态生成时,可以按照如下方式操作:

item = Item()
l = ItemLoader(item=item, response=response)
item.fields[name] = Field()
l.add(name, xpath)
  1. 先声明;
  2. 创建ItemLoader;
  3. 为Item创建动态属性;
  4. 为属性赋值

通常用在一个spider跑多个不同目标网站,例如:从excel中读取爬取目标及属性。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这些都是原来在微博上的文章,慢慢搬到这里吧 (一)安装和测试 学习网络爬虫也是进行自然语言处理的前期准备工作,爬虫...
    yahal阅读 2,944评论 0 1
  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 11,083评论 0 4
  • 1.CrawlSpider CrawlSpider是Scrapy提供的一个通用Spider。在Spider里,我们...
    wwxxee阅读 3,207评论 0 2
  • [TOC] 1.基本概念 爬虫就是获取网页并提取和保存信息的自动化程序 1.HTTP基本原理理 1.URI和URL...
    文化银儿阅读 5,608评论 0 0
  • 昨日幸福小事:我和仔的清单都完成 今日重要三件事: 1.准备上课材料 2.跟进好仔的内容列清单给他 3.第二期班第...
    大小仔的幸福生活阅读 832评论 0 0