转载自:http://hi.baidu.com/erliang20088/item/251db4b040b8ce58ba0e1235
近来由于毕设需要,重新修改了新浪微博爬虫废了不少劲,希望下边的总结能够帮助后来的同学们。
现行版的模拟登陆与以前相比,最大的改动在于cookie获取时候的模拟url的请求过程,其难点之一的密码加密并没有任何改动,因为此次的改动主要是重新理顺它的cookie获取过程中的几个url请求的节点。
一、url请求流
1、“http://www.weibo.com”,获取login_sid_t,uug等两个参数,在放入后续的请求cookie中。
2、“HttpGet hg = new HttpGet(
"http://login.sina.com.cn/sso/prelogin.php?entry=weibo&callback=sinaSSOController.preloginCallBack&su=&rsakt=mod&checkpin=1&client=ssologin.js(v1.4.11)&_="
+ (new Date()).getTime());”,即预登陆请求,获得serverTime,nonce,pubkey,rsaKV等参数,在加密和真正登陆时用。
3、http://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.4.11),开始真正的登陆,包括10几个参数,最关键的是加密参数。
5、“http://www.weibo.com/ajaxlogin.php?framelogin=1&callback=parent.sinaSSOController.feedBackUrlCallBack&sudaref=www.weibo.com”,得到上个请求中的cookies,加入该次请求中,得到此次的cookies,即可作为模拟抓取的cookies值。
二、在1、2、...5的5个请求中,需要抓包,分析每个cookies设置中的特殊之处,需要个人去分析一下,关键是要看懂第一大步。
在4、5之间的转向很关键,如果用httpclient的自动转向会丢失cookie导致最后得到的cookie看上去是对的,其实是非法不对的。
故需要在4、5之间改成手动设置重定向之后的cookie设置,在此处我废了很大劲,以为httpclient会自动加载重定向前的cookie了。
相关推荐
【标题】:“新浪微博模拟登陆” 在信息技术领域,模拟登录是一种常见的技术手段,它允许开发者通过编程方式自动登录网站并执行一些操作,例如抓取数据。本主题聚焦于使用Java实现对新浪微博的模拟登录,这对于数据...
Python爬虫源码大放送:抓取数据,轻松搞定! 想轻松抓取网站数据,却苦于技术门槛太高?别担心,这些源码将助你轻松搞定数据抓取,让你成为网络世界的“数据侠盗”。 它们还具有超强的实用价值。无论你是想要分析...
用python实现了新浪微博的模拟登陆,新浪微博各种加密,各种跳转,详细分析登陆过程并实现!
在这个场景中,我们关注的是如何使用HTTPClient 4库来模拟登录新浪微博。首先,我们需要理解HTTPClient库的基本概念。 HTTPClient是一个强大的Java库,用于处理HTTP请求和响应。它提供了丰富的功能,包括支持HTTPS...
本项目专注于利用Python对新浪微博数据进行分布式挖掘,涉及的关键知识点包括微博接口调用、分布式爬虫构建、Hadoop Streaming的使用以及数据的可视化。 一、**新浪微博接口之调用** 1. **环境准备**:首先需要...
if __name__ == ‘__main__’: weiboLogin = WeiboLogin(‘×××@gmail.com’, ‘××××’)#邮箱(账号)、密码 if weiboLogin.Login() == True: print “登陆成功!” 前两个import是加载Python的网络编程...
本文所述的基于Python的新浪微博爬虫系统,能够高效、稳定地抓取微博用户数据,克服了微博反爬虫机制,提供了新的社交媒体数据获取方法,具有重要的研究价值和实际应用前景。 #### 9. 关键技术词汇解释 - **反爬虫...
┃ ┃ ┃ ┃ ┣━新浪微博-模拟登陆-SinaWeiBoCookie.zip ┃ ┃ ┃ ┃ ┣━模拟登陆-专题 ┃ ┃ ┃ ┃ ┃ ┣━天涯论坛.zip ┃ ┃ ┃ ┃ ┣━漫爬型网络爬虫#.zip ┃ ┃ ┃ ┃ ┣━网络爬虫-专题 ┃ ┃ ┃ ┃ ┃ ┣...
首先,我们来看`Sina.java`,这是用于模拟登录新浪微博的代码。在新浪微博的模拟登录过程中,主要涉及到以下几个关键步骤: 1. **创建HttpClient实例**:HttpClient是整个模拟登录的核心,通过`HttpClientBuilder`...
对于“sina微博模拟登陆java源码”这个项目,我们主要关注以下几个关键知识点: 1. **微博模拟登陆**:模拟登录是指通过编程方式复现用户在浏览器上登录网站的过程。在新浪微博的情况下,由于其安全机制,登录过程...
java模拟浏览器登陆新浪微博爬取用户信息 新建java工程把包导入即可,仅供参考
遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施...
* weibo登陆,原始登陆机制采用模拟登陆,直接用PIL库调出验证码后,人工输入后,将相关参数编码到urllib2中,产生请求,后期采用cookie登陆, 免去了一系列麻烦。 * 爬取推送内容,推送内容主要包括用户发送的...
* weibo登陆,原始登陆机制采用模拟登陆,直接用PIL库调出验证码后,人工输入后,将相关参数编码到urllib2中,产生请求,后期采用cookie登陆, 免去了一系列麻烦。 * 爬取推送内容,推送内容主要包括用户发送的...
遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施...
1. **HttpClient模拟登陆无法获取Cookie** - 解决方案:通过分析新浪的加密算法,并使用第三方工具如HTTPFox来捕获加密过程中的JS脚本,成功获取Cookie。 2. **通过HttpMethod请求网址之后返回内容出现乱码** - ...
通过爬虫获取新浪微博数据,模拟登录是必不可少的。 1、在提交POST请求之前,需要GET获取四个参数(servertime,nonce,pubkey和rsakv),不是之前提到的只是获取简单的servertime,nonce,这里主要是由于js对用户名...
模拟登陆后保存cookie,实现登录状态的保存。可以通过输入关键词来爬取到关键词相关的热门微博。 爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续...
sina_weibo_crawler基于urlib2及beautifulSoup实现的微博爬虫系统。数据库采用mongodb,原始关系以txt文件存储,原始内容以csv形式存储,后期直接插入mongodb数据库功能:* weibo登陆,原始登陆机制采用模拟登陆,...
python爬虫模拟抓取网页内容,采集网页的内容,这里主要是模拟抓取新浪微博中的内容,里面包括了[源码] 爬取客户端微博信息、[源码] 爬取移动端个人信息 关注id和粉丝id (速度慢)、[源码] 爬取移动端微博信息 (强推)...