"""
打开 抓包工具 使用错误的密码登录查看实际的post地址,和post需要的数据
"""
在开发者工具中 ctrls+shift+f 搜索 上图对应的client_id 可以得到
authorization:"oauth c3cef7c66a1843f8b3a9e6a1e3160e20" 还有其他的可以看到这个值是固定的
时间戳 应该都知道该怎么做
如果不是频繁登录可以不用管验证码的值,但是post时要带上这个值
这两个可以都不用,这里只是列出如何获取
def get_signature(grantType, clientId, source, timestamp):
''' 处理signature'''hm = w(b'd1b964811afb40118a12068ff74a12f4', None, sha1)
# 这个数字在js中查找 40 位,猜位sha1,js里面也显示的位sha1
hm.de(grantType)) # 括号中是转为字节 这几个的顺序# -*- coding:UTF-8 -*- import requests, time import hmac, json #这几个需要导入的可以从js中获取,加密需要的 from bs4 import BeautifulSoup from hashlib import sha1def handle_signature(grantType, clientId, source, timestamp):''' 处理签名 ''' hm = w(b'd1b964811afb40118a12068ff74a12f4', None, sha1) # 这个数字在js中查找 hm.de(grantType)) # 括号中是转为字节 这几个的顺序 js中指定的顺序,不可以更改 hm.de(clientId))hm.de(source))hm.de(timestamp))print(str(hm.hexdigest()))return str(hm.hexdigest())def login(username, password, s,header):''' 处理login ''' grantType = 'password' clientId = 'c3cef7c66a1843f8b3a9e6a1e3160e20' source = 'com.zhihu.web' timestamp = str(int(time.time()*1000))data = {"client_id": clientId, "grant_type": grantType, "timestamp": timestamp, "source": source, "signature": handle_signature(grantType, clientId, source, timestamp), # 获取签名 "username": username, "password": password, "lang": "cn", "captcha": "", # 获取图片验证码 "ref_source": "homepage", "utm_source": "" }print("=========: " + str(data))print("-" * 50)resp2 = s.get('=en', headers=header) # 拿cookie )resp = s.post('', data, headers=headers).textprint(resp)print("-" * 50)return respif __name__ == "__main__":session = requests.Session()headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36', 'authorization': 'oauth c3cef7c66a1843f8b3a9e6a1e3160e20', "X-UDID": "AOCg84o2cw2PTtM0fuSB6i0YkxbJybCDVLs=", # "Referer":"=%2F" # 通过看headers中的数据,可以把感觉有用的都加上 }login('1833910716', '89068920', session, headers) # 用户名密码换自己的就好了 resp = ('', headers=headers) # 登录进去了 )
本文发布于:2024-02-01 18:47:00,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170678442138702.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |