Spider爬取的循环流程:
- 利用入口URL来初始化Request,此Request下载完毕返回Response并作为参数传给回调函数parse
- 在回调函数内分析Response,返回Item对象和Request的可迭代容器
- 其中返回的Request经过Scrapy处理,下载相应内容,调用回调函数
- 在回调函数中,可以使用选择器或其他解析器来分析response,并根据分析数据生成Item和Requset对象
- 最后,由回调函数生成的item可以经由ItemPipeline被保存到数据库
scrapy.Spider:
属性:
- name:定义spider的名字的字符串
- allowed_domains:可选,包含spider允许爬取的域名列表
- start_urls:初始URL列表
- custom_settings:爬取设置,类型为dict,该设置将会覆盖项目级的设置
- crawler:由类方法from_crawler()设置,链接了本spider实例对应的Crawler对象
方法 : - start_requests():返回可迭代对象,包含爬取的第一个Request
- make_requests_from_url(url):接受URL并返回Request对象
- parse(response):分析response函数,该方法返回request、Itemd 可迭代对象
- closed(reason):spider关闭时,调用该函数