零授权 抓取新浪微博任何用户的微博内容

一、微博API

  使用微博API获取数据是最简单方便,同时数据完整性高的方式,缺点是微博开发平台对于API的调用次数做了严格的限制。具体使用过程参考http://open.weibo.com/,有详细的教程,对于API次数的限制,我们是通过注册多个开发者账号来绕过,对于某个IP调用API次数的限制,暂时没办法解决。微博API是通过httpclient发起请求,返回json形式的数据。对于数据重复获取方面,也有专门的接口通过参数控制获取增量数据。优点:简单,数据完整性高,增量简单。缺点:API次数有严格限制,数据量小。

二、抓取API数据

  可以通过Jsoup来模拟浏览器的HTTP请求,Jsoup绕过微博登陆的方法就是设置cookie,对于获取回来的HTML页面,Jsoup也可以方便的进行解析,但是微博的数据比较特殊,页面是异步加载的,通过JS函数插入到指定div内,所以是通过自己写正则或者自己想办法解析,但是由于数据是异步加载,可能有时候会失败。但是页面内微博数据的获取是正确,完整度高的。优点:可并发,无次数限制,数据完整性高。缺点:有失败可能。

  通过weibo.com/login.php 获取数据需要设置cookie,且数据是异步加载,有失败的可能,对于weibo.cn的数据是同步加载的,但是由于页面元素简单,所以数据完整度低,对于增量数据获取以及数据判断去重复方面,不容易进行。对于weibo.cn可以通过在URL请求中加入gsid参数,绕过登陆检验,比设置cookie简单些。优点:可并发,数据获取没有失败可能。

参考博客:http://fair-jm.iteye.com/blog/2046031

参考博客:https://segmentfault.com/a/1190000000498692

二、通过微博跳转淘宝的免登方案大致流程图:

分享到微博的大致流程图:

时间: 2024-07-29 14:07:51

零授权 抓取新浪微博任何用户的微博内容的相关文章

测试开发Python培训:抓取新浪微博抓取数据-技术篇

测试开发Python培训:抓取新浪微博抓取数据-技术篇 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的selenium的课程中,我们在培训的课程里讲python的语言,也是通过项目实战的方式进行讲解,前期分享了个新浪微博的登陆功能,这次在通过抓取新浪微博数据进一步讲解脚本.(大家对课程感兴趣,请加qq:564202718) 微博有发布微博功能,微博发布后需要验证内容,那么如何验证微博发布数据的正确性,首先要

抓取新浪微博数据存入MongoDB,避免重复插入微博数据的方法

def getMyDatalist(): #id这个key key = str(u'id').decode('utf-8') #存储旧数据的id列表 old_ids = [] #存储新微博的列表 extr_wb = [] #从MongoDB上获取的数据 old_datalist = weibodata.find() for old in old_datalist: old_ids.append(old[key]) #从微博上抓取新数据 data = client.statuses.home_ti

【Android 我的博客APP】1.抓取博客首页文章列表内容——网页数据抓取

打算做个自己在博客园的博客APP,首先要能访问首页获取数据获取首页的文章列表,第一步抓取博客首页文章列表内容的功能已实现,在小米2S上的效果图如下: 思路是:通过编写的工具类访问网页,获取页面源代码,通过正则表达式得到匹配的数据进行处理显示到ListView上 简单说明下要点:1. 使用Apache HttpClient库实现GET请求.2. 异步请求处理.3. 正则表达式抓取自己需要的数据. 使用Apache HttpClient库实现GET请求. 使用Apache只需简单三步 HttpCli

python抓取新浪微博评论并分析

1,实现效果 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb2xhbnphbw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" width="320" height="300" > watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb2xhbn

[Python爬虫] Selenium爬取新浪微博客户端用户信息、热点话题及评论 (上)

一. 文章介绍 前一篇文章"[python爬虫] Selenium爬取新浪微博内容及用户信息"简单讲述了如何爬取新浪微博手机端用户信息和微博信息. 用户信息:包括用户ID.用户名.微博数.粉丝数.关注数等. 微博信息:包括转发或原创.点赞数.转发数.评论数.发布时间.微博内容等. 它主要通过从文本txt中读取用户id,通过"URL+用户ID" 访问个人网站,如柳岩: http://weibo.cn/guangxianliuya 因为手机端数据相对精简简单,所以采用输

Python分布式爬虫抓取知乎用户信息并进行数据分析

在以前的文章中,我写过一篇使用selenium来模拟登录知乎的文章,然后在很长一段时间里都没有然后了... 不过在最近,我突然觉得,既然已经模拟登录到了知乎了,为什么不继续玩玩呢?所以就创了一个项目,用来采集知乎的用户公开信息,打算用这些数据试着分析一下月入上万遍地走.清华北大不如狗的贵乎用户像不像我们想象中的那么高质量. 第一步:首先是爬虫抓取用户信息,能用图解释的绝不多废话: 但是还是得主要说下: 首先:个人感觉,在写一些小的demo时用框架就反而更显得繁琐,所以我没有使用框架,而是自己使用

INUX下抓取当前登录用户登录密码的工具:mimipenguin

前有Mimikatz,今有mimipenguin,近日国外安全研究员huntergregal发布了工具mimipenguin,一款Linux下的密码抓取神器,可以说弥补了Linux下密码抓取的空缺. 详情通过转储过程和提取那些包含明文密码可能性很高的行(hang),充分利用内存中的明文凭证.通过检查/etc/shadow文件hash,内存中的hash和正则匹配去尝试计算出每个单词的概率 要求root权限 已支持(以下环境已通过测试)Kali 4.3.0 (rolling) x64 (gdm3)U

使用php蓝天采集器抓取今日头条ajax的文章内容

今日头条的数据都是ajax加载显示的,按照正常的url是抓取不到数据的,需要分析出加载出址,我们以 https://www.toutiao.com/search/?keyword=%E6%96%B0%E9%97%BB 为例来采集列表的文章 用谷歌浏览器打开链接,右键点击"审查"在控制台切换至network并点击XHR,这样就可以过滤图片.文件等等不必要的请求只看页面内容的请求 由于页面是ajax加载的,所以将页面拉至最底部,会自动加载出更多文章,这时候控制台抓取到的链接就是我们真正需要

使用webpasser抓取某笑话网站整站内容

使用webpasser框架抓取某一笑话网站整站内容.webpasser是一款可配置的爬虫框架,内置页面解析引擎,可快速配置出一个爬虫任务.配置方式将页面解析和数据存储分离,如果目标网站改版,也可以快速修复. 配置说明如下(该例子完整配置见http://git.oschina.net/passer/webpasser): 1.先写总的抓取参数:网页编码是gbk,请求超时时间是5秒,请求失败重试5次,抓取失败后等待时间10秒,设置10个线程抓取,每次抓取后不等待.这里不设置请求头信息.cookie,