andrewwf 2019-12-22
# 创建项目后 $ scrapy genspider -t crawl spider_name website_domain ? url 就是你想要爬取的网址 注意:分析本地文件是一定要带上路径,scrapy shell默认当作url ?
CrawlSpider类继承自spider类
CrawlSpiders url规则 自动生成Request请求
Rule用来定义CrawlSpider的爬取规则 ? 参数: link_extractor Link Extractor的实例对象,它定义如何从每个已爬网页面中提取链接。 callback 回调函数 cb_kwargs 是一个包含要传递给回调函数的关键字参数的dict follow 它指定是否应该从使用此规则提取的每个响应中跟踪链接。 process_links 用于过滤连接的回调函数 process_request 用于过滤请求的额回调函数 ?
参数: • allow 正则表达式 满足的url 会被提取出来 ? • deny 正则表达式 满足的url 不会被提取出来 ? • restrict_xpaths 路径表达式 符合路径的标签提取出来 ? LinkExractor也是scrapy框架定义的一个类 它唯一的目的是从web页面中提取最终将被跟踪的额连接。 ? 我们也可定义我们自己的链接提取器,只需要提供一个名为 extract_links的方法,它接收Response对象 并返回scrapy.link.Link对象列表。 ?