多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
* 选择一个文件夹用cmd进入,并执行创建项目语句 * cd进`demo`并创建爬虫类 ``` cd X:\Users\amoln\Desktop\demo scrapy startproject demo scrapy genspider fanyi fanyi.baidu.com ``` ![](https://img.kancloud.cn/a5/9c/a59c539a7c8b542c824df4b1ced683d1_885x383.png) * 生成的文件 ``` X:. │ scrapy.cfg │ └─demo │ items.py 用于存放爬虫爬取数据的模型 │ middlewares.py 用于存放各种中间件的文件 │ pipelines.py 用来将items的模型存储到本地磁盘中 │ settings.py 本爬虫的一些配置信息(比如请求头信息,多久发送一次请求,ip代理池) │ __init__.py │ └──spiders 爬虫书写文件夹 │ fanyi.py 爬虫文件 └─ __init__.py ``` * 修改配置文件`settings.py` ``` LOG_LEVEL = 'ERROR' # 隐藏无用shell输出 DOWNLOAD_DELAY = 0.1 #延迟时间 ROBOTSTXT_OBEY = False #不遵守robots.txt 的规则 import os FILEPATH = os.path.dirname(os.path.abspath(__file__)) IMGFILEPATH = FILEPATH + "/img/" # 图片下载地址 IMAGES_STORE = IMGFILEPATH #定义图片下载地址为项目下img文件夹 IMAGES_EXPIRES = 90 # 过期天数 IMAGES_MIN_HEIGHT = 100 # 图片的最小高度 IMAGES_MIN_WIDTH = 100 # 图片的最小宽度 # 定义响应头防止被墙 DEFAULT_REQUEST_HEADERS = { 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language': 'en', 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36' } DOWNLOADER_MIDDLEWARES = { 'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware': None, } RETRY_HTTP_CODES = [500, 502, 503, 504, 400, 403, 408] ``` * 修改爬虫文件` fanyi.py` 输出爬取状态 ``` import scrapy class FanyiSpider(scrapy.Spider): name = 'fanyi' allowed_domains = ['fanyi.baidu.com'] # 定义只爬取变量内的网站 start_urls = ["https://fanyi.baidu.com/#en/zh/Hello%20friend!%20I'm%20a%20bard"] # 定义爬取的url, def parse(self, response): # 爬虫启动后进入parse方法 print(response) # 输出爬取状态 200为成功获取内容 ``` * cd进项目文件夹并执行`fanyi.py`爬虫 ``` cd demo scrapy crawl fanyi ``` ![](https://img.kancloud.cn/1d/3c/1d3cbc586932d61c2c34512f77636bdd_707x185.png)