Scrapy 数据保存在mysql数据库
- 先在cmd里登录Mysql,并创建数据库,创建对应items内容的字段表.
- 在项目settings文件中添加与数据库连接相关的变量
- 在pipeline.py文件中创建一个MysqlDBPipeline类用于操作数据库
在init里面连接数据库并获取游标,在process_item里面操作数据库插入数据,并提交. - 在setting.py中把MysqlDBPipeline的类添加进去,开启一下爬虫.
最后打开cmd 登录mysql 进入数据库,查看表数据.是否插入成功.
Scrapy数据保存mysql数据库完成
Scrapy配置随机请求头
- 首先在settings.py文件中配置一下我们需要的请求头列表
- 在middlewares.py中去定义一个生成随机user-agenr的类RandomUserAgentMiddleware
- 在middlewares中默认的方法:
process_request(),当每个请求通过下载中间件的时候,该方法被调用
Process_response():当下载器完成http请求,传递响应的时候该方法会被调用. - 在process_request()方法里随机生成一个请求头并替换给request请求里的[‘User-Agten’]
- 接下来我们定义一个类CheckUserAgent,在里面定义一个process_response()方法,来查看一下返回的response里面的User-Agent是否是随机的,并且把返回的response返回给引擎.