网页分析工作不做过多的解释 直接对crawl爬虫的重点进行总结
crawl爬虫本人感觉最重要的是对网站的翻页处理 与对链接的爬取
由于书上所说可以转化为通用爬虫 我感觉没有太大的意义 便没有再学直接上代码 先上项目结构图
一、items.py
import scrapy
from scrapy.loader import ItemLoader
from scrapy.loader.processors import TakeFirst,Join,Compose
#这里继承了loader的ItemLoader
class NewsLoader(ItemLoader):
default_output_processor = TakeFirst()#爬下来的链接可能为多条而TakeFirst为序列中的第一个
#对text和source属性进行重新的规范
class ChinaLoader(NewsLoader):
text_out=Compose(Join(),lambda s:s.strip())#strip去除前后的空格 并使text属性的item合成为一个
source_out=Compose(Join(),lambda s:s.strip())
class ScrapyuniversalItem(scrapy.Item):#不多介绍 对要提取的数据进行定义
title=scrapy.Field()
url=scrapy.Field()
text=scrapy.Field()
datetime=scrapy.Field()
source=scrapy.Field()
website=scrapy.Field()