一些废话

之前写的用python3+urllib写的多线程微博(传送门),后面发现登录账号频繁被403,所以解决登录问题迫在眉睫。而且python的“多线程”并不那么多线程,最近因为刚需,需要稳定的微博爬虫,所以琢磨了一下使用selenium+aiohttp+redis写了一个使用asyncio的新浪爬虫。

简介

这里不多废话,大概介绍一下怎么做的。大致是:

登录

通过weibo.com登录界面登录,因为weibo.cn登录如果需要验证的话是要类似于解锁那样验证的,不好做。

而weibo.com只要输入验证码,而验证码可以通过yundama来验证,yundama也不贵,验证一次大概一分钱吧,登录成功后,在去访问weibo.cn,新浪会自行转换weibo.com的cookies到weibo.cn的cookies

然后把cookies保存在redis共享

抓取

使用了aiohttp,毕竟python的协程比多线程更给力,爬虫就是个频繁io的过程,自然用协程比多线程快了不少。

解析用的是bs4,解析后的数据放到kafka上,想存哪存哪~

talk is cheap, show you the code

这里就不说具体怎么做和使用了,README.md上有使用不走,感兴趣的看源码去吧。

python3 asyncio 爬虫_python3 asyncio异步新浪微博爬虫WeiboSpider相关推荐

  1. python3 asyncio原理_Python3 asyncio Lock 协程锁实现原理

    class Lock: """ 协程锁对象 """ def __init__(self, *, loop=None): # 创建一个_wai ...

  2. Java爬虫 springboot框架下 新浪微博爬虫

    这个题目,讲真,我也奇怪,我为什么写个爬虫需要用到这种大型框架,最开始,刚开始接触爬虫的时候,我写的爬虫,只要能获得我想要的数据,那就是成功的,完美的,没有bug的,哪怕他慢,哪怕操作繁琐且复杂,只要 ...

  3. python 微信爬虫_python3简单实现微信爬虫

    使用ghost.py 通过搜搜 的微信搜索来爬取微信公共账号的信息 # -*- coding: utf-8 -*- import sys reload(sys) import datetime imp ...

  4. python asyncio与aiohttp_python链家网异步IO爬虫,使用asyncio、aiohttp和aiomysql

    python链家网异步IO爬虫,使用asyncio.aiohttp和aiomysql 平均1秒可以爬取30个详情页信息 可以使用asyncio.Semaphore来控制并发数,达到限速的效果 # -* ...

  5. python3.6网络爬虫_python3.6网络爬虫

    <精通Python网络爬虫:核心技术.框架与项目实战>--导读 前 言 为什么写这本书 网络爬虫其实很早就出现了,最开始网络爬虫主要应用在各种搜索引擎中.在搜索引擎中,主要使用通用网络爬虫 ...

  6. python3 scrapy爬虫_Python3 Scrapy爬虫框架(Scrapy/scrapy-redis)

    Python3 Scrapy爬虫框架(Scrapy/scrapy-redis) 本文由 Luzhuo 编写,转发请保留该信息. 原文: https://blog..net/Rozol/article/ ...

  7. python3 爬虫_Python3爬虫介绍

    Python3爬虫介绍 一.为什么要做爬虫 首先请问:都说现在是"大数据时代",那数据从何而来? 数据管理咨询公司:麦肯锡.埃森哲.艾瑞咨询 爬取网络数据:如果需要的数据市场上没有 ...

  8. Python 大规模异步新闻爬虫、google翻译、百度翻译、有道翻译、百度指数

    参考:https://www.yuanrenxue.com/crawler/news-crawler-urlpool.html url_pool.py # -*- coding: utf-8 -*- ...

  9. Python|并发编程|爬虫|单线程|多线程|异步I/O|360图片|Selenium及JavaScript|Scrapy框架|BOM 和 DOM 操作简介|语言基础50课:学习(12)

    文章目录 系列目录 原项目地址 第37课:并发编程在爬虫中的应用 单线程版本 多线程版本 异步I/O版本 总结 第38课:抓取网页动态内容 Selenium 介绍 使用Selenium 加载页面 查找 ...

最新文章

  1. 【错误记录】Ubuntu 修改 hosts 文件 ( 使用 gedit /etc/hosts 命令打开并修改 hosts 文件 )
  2. 捡到vivo手机怎么清除账号_大学保安两天两次跳湖为路人捡手机,您怎么看?...
  3. VTK:Points之MaskPointsFilter
  4. .Net 实用技术收藏!!!
  5. 【20120517】【早晨】
  6. 快捷c语言中控程序,CREATOR快捷\creator\CR-PGMII\ST-7600C\CREATOR中控
  7. Intellij IDEA与Eclipse对比
  8. 用Pytorch自建6层神经网络训练Fashion-MNIST数据集,测试准确率达到 92%
  9. 百度地图level对应距离(比例尺级别对应的多少米)
  10. P3374 【模板】树状数组 1( 单点修改 + 区间查询 )
  11. 计算机理论指导论文,关于计算机理论论文集锦-20210705011555.docx-原创力文档
  12. Java中csv文件读写分析
  13. 五面拿下阿里飞猪offer,java发送notes邮件
  14. 虚拟桌面分屏_无需分屏软件!让一台主机为两台显示器分屏工作的方法
  15. 我讽刺中医把每个养生的都化成了神仙
  16. Java怎样快速入门?该如何学Java?
  17. 基于目标检测的狗品种识别及图像检索
  18. 第三届全国网络空间安全技术大赛 Web补题 By Assassin(持续更新)
  19. linux中yum源在那个目录下,Linux ---各种yum源配置详解
  20. python 导入图片

热门文章

  1. android圆形头像 demo,Android图像处理之绘制圆形头像
  2. python基础100_python基础100题
  3. linux c语 curl代码_偷懒必备工具——一键生成爬虫代码
  4. c++函数为什么带imp_二次函数含参最值问题,老师怎么讲学生都不明白,试试这九张动图...
  5. 判断101-200之间有多少个素数,并输出所有素数。
  6. 计算机视觉三大顶级会议ICCV,CVPR,ECCV网址
  7. Java并发编程实战~Lock
  8. oracle查看锁表进程,杀掉锁表进程
  9. C++学习之路 | PTA乙级—— 1056 组合数的和 (15 分)(精简)
  10. 1053 Path of Equal Weigh(甲级)