问题描述
各位大牛:我最近需要爬取新浪微博一些数据,决定用java(不用新浪微博提供的API);具体步骤如下:1先用POST方法发送表头和表单,得到一个返回,取出里面的location.replace包含的链接地址;2用get方法向步骤一得到的链接地址发一个返回数据,得到如下结果:<html><head><scriptlanguage='javascript'>parent.sinaSSOController.feedBackUrlCallBack({"result":true,"userinfo":{"uniqueid":"2159834885","userid":null,"displayname":"312241444","userdomain":"?wvr=5&lf=reg"}});</script></head><body></body></html>3从这里面提取uniqueid和userdomain,再次生成一个url:http://weibo.com/u/2159834885?wvr=5&wvr=5&lf=reg,继续用get方法(带上步骤一POST后返回的cookie),结果还是返回登录页面;我用firebug跟踪浏览器登录,和我的模拟登录发送数据包的顺序是一样的,但是我通过java程序还是无法得到微博的数据,求各位大牛指导,感谢!
解决方案
解决方案二:
楼主在模拟登陆的登陆的时候记得设置一下user-agentjava的agent说不定会被屏蔽掉楼主都已经登陆成功了很厉害啊我当时做个新浪的模拟登陆花了一周时间
解决方案三:
我不知道楼主是如何做的登陆我记得新浪的账户密码不是明文传回去验证的而是现在客户端用js加密之后再传这个加密算法隐藏的很深我好不容易才找到因为js代码真心难懂而且变量命名毫无规则各种a,b,c,d的这种变量
解决方案四:
引用2楼zyrobert的回复:
我不知道楼主是如何做的登陆我记得新浪的账户密码不是明文传回去验证的而是现在客户端用js加密之后再传这个加密算法隐藏的很深我好不容易才找到因为js代码真心难懂而且变量命名毫无规则各种a,b,c,d的这种变量
这个问题有牛人写了代码,链接在这:http://blog.csdn.net/memray/article/details/8911113
解决方案五:
引用3楼u011305249的回复:
Quote: 引用2楼zyrobert的回复:
我不知道楼主是如何做的登陆我记得新浪的账户密码不是明文传回去验证的而是现在客户端用js加密之后再传这个加密算法隐藏的很深我好不容易才找到因为js代码真心难懂而且变量命名毫无规则各种a,b,c,d的这种变量这个问题有牛人写了代码,链接在这:http://blog.csdn.net/memray/article/details/8911113
好吧现在研究的人多了
解决方案六:
用http://blog.csdn.net/wolfphantasms/article/details/8635456的上半段代码能够成功登录了,感谢博主无私分享成功经验!
解决方案七:
解决方案八:
引用4楼zyrobert的回复:
Quote: 引用3楼u011305249的回复:
Quote: 引用2楼zyrobert的回复:
我不知道楼主是如何做的登陆我记得新浪的账户密码不是明文传回去验证的而是现在客户端用js加密之后再传这个加密算法隐藏的很深我好不容易才找到因为js代码真心难懂而且变量命名毫无规则各种a,b,c,d的这种变量这个问题有牛人写了代码,链接在这:http://blog.csdn.net/memray/article/details/8911113
好吧现在研究的人多了[/quote请问这个可以登陆吗,为什么我的不能呢
解决方案九:
有没有人解决了这个问题?http://blog.csdn.net/memray/article/details/8911113这里的代码好像也不行了时间: 2024-09-22 08:58:21