1.为什么要用Cookies池?

  • 网站需要登录才可爬取,例如新浪微博
  • 爬取过程中如果频率过高会导致封号
  • 需要维护多个账号的Cookies池实现大规模爬取

2.Cookies池的要求

  • 自动登录更新
  • 定时验证筛选
  • 提供外部接

3.Cookies池架构

4.github上下载cookie池维护的代码

https://github.com/Germey/CookiesPool

  1. ()安装
  2. pip3 install -r requirements.txt
  3.  
  4. ()基础配置
  5. 修改cookiespool/config.py
  6.  
  7. ()数据库配置
  8. account:weibo:账号
  9. cookies:weibo:账号
  10.  
  11. Value分别为密码和Cookies
  12.  
  13. 账号自行某宝购买
  14.  
  15. Redis连接信息到cookiespool/config文件修改
  16.  
  17. ()云打码平台配置
  18. yundama.com注册开发者和普通用户。
  19. 开发者申请应用IDKEY,普通用户用于充值登录。
  20. 配置信息到cookiespool/config文件修改
  21.  
  22. ()进程开关
  23. 配置信息到cookiespool/config文件修改
  24.  
  25. ()运行
  26. python3 run.py
  27.  
  28. ()批量导入
  29. python3 importer.py
  30.  
  31. 请输入账号密码组, 输入exit退出读入
  32. ----astvar3647
  33. ----gmidy8470
  34. ----uoyuic8427
  35. ----rktfye8937
  36. 账号 密码 astvar3647
  37. 录入成功
  38. 账号 密码 gmidy8470
  39. 录入成功
  40. 账号 密码 uoyuic8427
  41. 录入成功
  42. 账号 密码 rktfye8937
  43. 录入成功
  44. exit

5.修改配置文件

C:\software\phpStudy\PHPTutorial\WWW\python3\maoyantop100\CookiesPool-master\cookiespool\config.py

  1. # Redis数据库地址
  2. REDIS_HOST = '192.168.33.12'
  3.  
  4. # Redis端口
  5. REDIS_PORT =
  6.  
  7. # Redis密码,如无填None
  8. REDIS_PASSWORD = ''
  9.  
  10. # 配置信息,无需修改
  11. REDIS_DOMAIN = '*'
  12. REDIS_NAME = '*'
  13.  
  14. # 云打码相关配置到yundama.com申请注册
  15. YUNDAMA_USERNAME = '*****'
  16. YUNDAMA_PASSWORD = '*****'
  17. YUNDAMA_APP_ID = ''
  18. YUNDAMA_APP_KEY = '1b586a30bfda5c7fa71c881075ba49d0'
  19.  
  20. YUNDAMA_API_URL = 'http://api.yundama.com/api.php'
  21.  
  22. # 云打码最大尝试次数
  23. YUNDAMA_MAX_RETRY =
  24.  
  25. # 产生器默认使用的浏览器
  26. DEFAULT_BROWSER = 'PhantomJS' # 'Chrome'
  27.  
  28. # 产生器类,如扩展其他站点,请在此配置
  29. GENERATOR_MAP = {
  30. 'weibo': 'WeiboCookiesGenerator'
  31. }
  32.  
  33. # 测试类,如扩展其他站点,请在此配置
  34. TESTER_MAP = {
  35. 'weibo': 'WeiboValidTester'
  36. }
  37.  
  38. # 产生器和验证器循环周期
  39. CYCLE =
  40.  
  41. # API地址和端口
  42. API_HOST = '127.0.0.1'
  43. API_PORT =
  44.  
  45. # 进程开关
  46. # 产生器,模拟登录添加Cookies
  47. GENERATOR_PROCESS = True
  48. # 验证器,循环检测数据库中Cookies是否可用,不可用删除
  49. VALID_PROCESS = False
  50. # API接口服务
  51. API_PROCESS = True

6.运行项目

5.使用Redis+Flask维护动态Cookies池的更多相关文章

  1. 4.使用Redis+Flask维护动态代理池

    1.为什么使用代理池 许多⽹网站有专⻔门的反爬⾍虫措施,可能遇到封IP等问题. 互联⽹网上公开了了⼤大量量免费代理理,利利⽤用好资源. 通过定时的检测维护同样可以得到多个可⽤用代理理. 2.代理池的要 ...

  2. 转载:使用redis+flask维护动态代理池

    githu源码地址:https://github.com/Germey/ProxyPool更好的代理池维护:https://github.com/Python3WebSpider/ProxyPool ...

  3. 使用redis+flask维护动态代理池

    在进行网络爬虫时,会经常有封ip的现象.可以使用代理池来进行代理ip的处理. 代理池的要求:多站抓取,异步检测.定时筛选,持续更新.提供接口,易于提取. 代理池架构:获取器,过滤器,代理队列,定时检测 ...

  4. 使用redis所维护的代理池抓取微信文章

    搜狗搜索可以直接搜索微信文章,本次就是利用搜狗搜搜出微信文章,获得详细的文章url来得到文章的信息.并把我们感兴趣的内容存入到mongodb中. 因为搜狗搜索微信文章的反爬虫比较强,经常封IP,所以要 ...

  5. 利用 Flask+Redis 维护 IP 代理池

    代理池的维护 目前有很多网站提供免费代理,而且种类齐全,比如各个地区.各个匿名级别的都有,不过质量实在不敢恭维,毕竟都是免费公开的,可能一个代理无数个人在用也说不定.所以我们需要做的是大量抓取这些免费 ...

  6. 爬虫技术:cookies池的维护

    一:为什么要维护cookie 1.登录才能爬取内容 2.爬取频繁会被封号. 3.需要维护多个账号的cookie,实现大规模抓取 二:cookies的要求 1.自动登录更新 2.定期筛选验证 3.提供外 ...

  7. 小白进阶之Scrapy(基于Scrapy-Redis的分布式以及cookies池)

    首先我们更新一下scrapy版本.最新版为1.3 再说一遍Windows的小伙伴儿 pip是装不上Scrapy的.推荐使用anaconda .不然还是老老实实用Linux吧. conda instal ...

  8. Server-side Sessions with Redis | Flask (A Python Microframework)

    Server-side Sessions with Redis | Flask (A Python Microframework) Server-side Sessions with Redis By ...

  9. Redis 简单使用 and 连接池(python)

    Redis 简介 NoSQL(not only sql):非关系型数据库 支持 key-value,  list,  set,  zset,  hash 等数据结构的存储:支持主从数据备份,集群:支持 ...

随机推荐

  1. 消息队列(四)--- RocketMQ-消息发送2

    概述   接着我们上一篇继续分析消息发送,上节讲到消息发送前有可能遇到 broker 失效的情况,RocketMQ 主要是采用两种策略 : 重试发送 broker 故障延迟机制   后者指的是当发送给 ...

  2. selenium+python实现自动化登录

    工作需要实现一个微博自动登录的操作,在网上差了一些资料,决定使用selenium+python实现 selenium 是一个web的自动化测试工具,主流一般配合java或者python使用,我这里使用 ...

  3. 「CF815C」Karen and Supermarket

    传送门 Luogu 解题思路 树形背包. 设 \(f[i][j][0/1]\) 表示在以 \(i\) 为根的子树中选 \(j\) 件商品的最少花费. 边界条件: \(f[i][j][0] = \min ...

  4. acm数论之旅(转载)---最大公约数与最小公倍数

    gcd(a, b),就是求a和b的最大公约数 lcm(a, b),就是求a和b的最小公倍数 然后有个公式 a*b = gcd * lcm     ( gcd就是gcd(a, b), ( •̀∀•́ ) ...

  5. retrying 模块

    我们在写爬虫的过程中,经常遇到爬取失败的情况,这个时候我们一般会通过 try 块去进行重试,但是每次都写那么一堆 try 块,真的是太麻烦了,所以今天就来说一个比较 pythonic 的模块,retr ...

  6. Bugku-CTF社工篇之简单的社工尝试

  7. Ubuntu 16.04 安装ROS sudo rosdep init报错问题

    解决博文:https://blog.csdn.net/weixin_37835458/article/details/79878785 输入sudo rosdep init报错如下: Tracebac ...

  8. express session 实现登录

    https://www.cnblogs.com/mingjiatang/p/7495321.html Express + Session 实现登录验证   1. 写在前面 当我们登录了一个网站,在没有 ...

  9. idea2018.3.6,离线使用maven的方法

    (1)想办法拷贝联网电脑上已经下载好的仓库文件夹mavenRepository到离线环境的电脑上: (2)idea中按照如下图中配置: (3)打开 User settings file中设置的sett ...

  10. i.MX RT600之DSP调试环境搭建篇

    恩智浦的i.MX RT600是跨界处理器产品,同样也是i.MX RTxxx系列的开山之作.不同于i.MX RT1xxx系列单片机,i.MX RT600 采用了双核架构,将新一代Cortex-M33内核 ...