python cookie池_Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

本文介绍了如何在Python Scrapy框架中利用Cookie池进行爬虫实践,特别是针对微博登录的Cookie管理。通过下载安装GitHub上的CookiesPool库,设置浏览器模拟登录,并进行相关配置,可以从Cookie池随机获取并处理Cookies,用于Scrapy爬虫的请求中间件,确保爬取过程的顺利进行。
摘要由CSDN通过智能技术生成

下载代码Cookie池(这里主要是微博登录,也可以自己配置置其他的站点网址)

下载代码GitHub:https://github.com/Python3WebSpider/CookiesPool

a5a78c7a67e602f1ae78b76691aa6177.png

下载安装过后注意看网页下面的相关基础配置和操作!!!!!!!!!!!!!

自己的设置主要有下面几步:

1、配置其他设置

805df1713bdf119e7894b2a33de613a6.png

2、设置使用的浏览器

cecdeb1c44ed8de8d32f1cd072e723cb.png

e0627db8d16c6d70b5428c3af1ad0f4a.png

3、设置模拟登陆

e3c0e726c2eea78efe0ca841945e78db.png

源码cookies.py的修改(以下两处不修改可能会产生bug):

308083a8f2eab7b33a000eea8410ab31.png

a75c816dbb999349095a93a3234a4edc.png

4、获取cookie

随机获取Cookies: http://localhost:5000/weibo/random(注意:cookie使用时是需要后期处理的!!)

07ad517c2f0b869b563b418630a9dc62.png

简单的处理方式,如下代码(偶尔需要对获取的cookie处理):

def get_cookie(self):

return requests.get('http://127.0.0.1:5000/weibo/random').text

def stringToDict(self,cookie):

itemDict = {}

items = cookie.replace(':', '=').split(',')

for item in items:

key = item.split('=')[0].replace(' ', '').strip(' "')

value = item.split('=')[1].strip(' "')

itemDict[key] = value

return itemDict

scrapy爬虫的使用示例(爬取微博):

middlewares.py中自定义请求中间件

def start_requests(self):

ua = UserAgent()

headers = {

'User-Agent': ua.random,

}

cookies = self.stringToDict(str(self.get_cookie().strip('{|}')))

yield scrapy.Request(url=self.start_urls[0], headers=headers,

cookies=cookies, callback=self.parse)

cookies = self.stringToDict(str(self.get_cookie().strip('{|}')))

yield scrapy.Request(url=self.start_urls[0], headers=headers,

cookies=cookies, callback=self.parse)

settings.py 中的配置:

6659bb4bbe5f91a4170c74b15bebe9df.png

5、录入账号和密码:

84538ba01f4ef90ce9a7864b678c93ba.png

格式规定(账号----密码)

2f5c634c136ea4788d72c77565bc6091.png

6、验证:(注意:使用cmd)

8c3c75a29c05d81d0c73c94c461d4470.png

7、使用时注意保持cmd打开运行!!

使用时一定要打开cmd,并运行如第6步。

得到Cookie是判断是否处理处理Cookie(几乎都需要!!)类比第4步!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值