Python_模拟登陆新浪微博

本文介绍了如何使用Python模拟登录新浪微博,通过Fiddler抓包获取关键信息,包括加密参数、用户名和密码的加密过程。详细解析了登录的三个步骤,并展示了如何使用Cookie进行登录。此外,还分享了发送微博的Python代码,尽管作者承认因时间仓促可能存在错误,但整体流程已清晰呈现。
摘要由CSDN通过智能技术生成

模拟网页登陆

1、下载http抓包软件Fiddler,打开后可以抓取到所有经过80端口的数据包
2、打开登陆新浪微博的界面,可以在Fiddler中看到相关的信息,查了一晚上的资料得知,新浪微博登陆主要靠3个请求
1)这里写图片描述
这个请求用于获得几个用于加密的参数
2)这里写图片描述
这个请求将加密的用户名和密码发送出去
3)这里写图片描述
这个请求就是用于登陆的
3、分析第一个请求
这里写图片描述
其中最后一个是时间戳
返回值中的servertime,pubkey nonce,rsakv是我们需要的值,用于下一步的加密
4、分析第二个请求
这里写图片描述
其中su,sp分别是加密过后的用户名和密码。
查看sina登陆的js代码 可以看到加密的过程。
用户名的加密方式是通过BASE64计算得到

username_ = urllib.quote(username)
username = base64.encodestring(username)[:-1]

密码是通过rsa加密
先创建一个rsa公钥,公钥的两个参数分别是登录第一步中的pubkey和js加密文件中的‘10001’。这两个值需要先从16进制转换成10进制,不过也可以写死在代码里。这里就把10001直接写死为65537。代码如下:

rsaPublickey &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值