Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

作者:MXuDong 时间:2023-03-25 00:27:03 

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

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

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

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

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

1、配置其他设置

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

2、设置使用的浏览器

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

3、设置模拟登陆

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

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

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

 Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

4、获取cookie

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

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

简单的处理方式,如下代码(偶尔需要对获取的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 中的配置:

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

5、录入账号和密码:

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

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

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

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

Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

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

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

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

来源:https://blog.csdn.net/qq_33472765/article/details/80957853

标签:scrapy,Cookie
0
投稿

猜你喜欢

  • 详解Vue用cmd创建项目

    2024-05-21 10:16:38
  • 关于IDEA git 只有Commit没有Push的问题

    2023-07-20 02:26:58
  • 使用Python微信库itchat获得好友和群组已撤回的消息

    2021-03-25 08:27:44
  • Mysql使用kill命令解决死锁问题(杀死某条正在执行的sql语句)

    2024-01-24 06:36:03
  • Java操作数据库连接池案例讲解

    2024-01-21 18:39:40
  • Python基于回溯法子集树模板实现8皇后问题

    2023-09-25 08:34:45
  • Django数据统计功能count()的使用

    2022-12-21 23:49:29
  • FrontPage 2002应用技巧四则

    2008-08-17 10:57:00
  • 解决Tensorflow安装成功,但在导入时报错的问题

    2022-03-05 18:39:27
  • VBScript GetObject 函数用法介绍

    2008-01-30 17:00:00
  • 通过Python绘制中国结的示例代码

    2021-05-29 15:15:21
  • python统计cpu利用率的方法

    2022-02-05 23:33:44
  • 如何编写TOP10之类的排行榜?

    2009-11-07 18:45:00
  • 通过VB6将ASP编译封装成DLL组件最简教程 附全部工程源文件

    2012-11-30 20:20:50
  • 基于Python的身份证验证识别和数据处理详解

    2021-04-22 04:43:09
  • SqlServer将数据库中的表复制到另一个数据库

    2024-01-22 11:31:33
  • python 绘图模块matplotlib的使用简介

    2023-08-09 19:09:01
  • JavaScript ES6的新特性使用新方法定义Class

    2024-04-10 11:00:30
  • 如何从MySQL数据库表中检索数据

    2008-11-01 17:08:00
  • python中的五种异常处理机制介绍

    2022-05-05 13:02:01
  • asp之家 网络编程 m.aspxhome.com