scrapy学习笔记
部署Scrapy
Scrapy架构
Scrapy使用
创建项目
使用scrapy
创建项目:scrapy startproject myproject
一些遇到的问题
- extract()函数范围值为list
- item的使用
按照我的理解,item本质就是个dict,而field的作用是为了对对应的字符串进行赋值而使用.
Field
对象完全就是python字典(dict),被用来基于类属性(class attribute)的方法来支持,item可以通过继承item来扩展如果遇到多个list组成的dict来赋值item.目前我考虑到两种方式:
1. 官方利用dict遍历来实现item的赋值
1
2
3
4
5
6
7
items = []
for city in city_list:
item = items.InsScrapyItem()
item['slug'] = city['slug'],
item['id'] = city['id'],
item['name'] = city['name'],
items.append(item)
来实现多个item的组合.
参考代码:[dirbot](https://github.com/scrapy/dirbot)
2. 我考虑到`scrapy.Item`本身就是dict属性,所以考虑直接把city_list赋值给他,似乎也能实现