scrapy项目架构与配置文件

scrapy项目架构

-project   # 项目名
  -project # 跟项目一个名,文件夹
    -spiders    # spiders:放着爬虫  genspider生成的爬虫,都放在这下面
      -__init__.py
      -chouti.py # 抽屉爬虫
      -cnblogs.py # cnblogs 爬虫
    -items.py     # 类似django中的models.py文件 ,里面写一个个的模型类
    -middlewares.py  # 中间件(爬虫中间件,下载中间件),中间件写在这
    -pipelines.py   # 写持久化的地方(持久化到文件,mysql,redis,mongodb)
    -settings.py    # 配置文件
  -scrapy.cfg       # Scrapy 上线部署时的配置文件

scrapy配置文件

settings.py

# 是否遵循爬虫协议,强行运行
ROBOTSTXT_OBEY = False   

# 请求头中的USER_AGENT
USER_AGENT = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36'
    
# 这样配置,程序错误信息才会打印,
LOG_LEVEL='ERROR' 

爬虫程序文件

class ChoutiSpider(scrapy.Spider):
    name = 'chouti'   # 它是每个爬虫程序唯一的名字,用来区分不同的Spider
    allowed_domains = ['https://dig.chouti.com/']  # 允许爬取的域名
    start_urls = ['https://dig.chouti.com/']   # 起始爬取的位置,爬虫一启动,会先向它发请求

    def parse(self, response):  # 解析response对象,响应回来自动执行parser,在这个方法中做解析
        print('---------------------------',response)
原文地址:https://www.cnblogs.com/baohanblog/p/12675200.html