admin管理员组文章数量:1567915
标题: qq空间cookie登陆的两种方式
- requests.get(url,headers) 其中cookie在headers头文件中,每次请求都要带上headers
- s=request.session() s.cookies[‘xxxxx’] = “cookie的值”,每次请求不用再带上headers,直接get就好
1、需求分析:
- 登陆qq空间实现个人或者好友的说说列表信息获取
2、找到关键信息
2、1观察qq空间信息来来自由JS脚本返回的信息:
要仔细在调试页面找到这个返回json信息的js路径,绝对找的到,我也找了好久!!!
2、1获取cookie信息:
3、逻辑实现:
获取这段js的路径链接:url = 'https:/xxxxxxxx' # 步骤1
获取登陆qq空间后的cookie: cookie = 'xxxxxxxxxx' # 步骤2
用带有cookie信心的headers请求头请求url: requests.get(url,headers=headers) # 步骤3
4、代码实现:
(1)方法1:每次请求带上headers信息:
import requests
"""
方法1:每次请求带上headers,其中cookie包含在headers中
"""
cookie = 'pgv_pvi=270815232; ptui_loginuin=937886362; pt2gguin=o0937886362; RK=rf7xbFDkVu; ptcz=014ce957fb0ff44bcee8bc4101d17bf49abb57ffa854cd0b1caf770a8314f854; luin=o0937886362; tvfe_boss_uuid=3a70612a82d1d77b; pgv_pvid=7697825562; o_cookie=937886362; qz_screen=1920x1080; QZ_FE_WEBP_SUPPORT=1; __Q_w_s__QZN_TodoMsgCnt=1; mobileUV=1_16286309a46_7ca70; __Q_w_s_hat_seed=1; lskey=0001000001b6085bfa9d198e4ccd7311643f2db6b37c66a1ce06d3bb657c0e10265aa2fd146c9d19797dd663; uid=263517280; __layoutStat=9; pgv_si=s3919702016; ptisp=cm; pgv_info=ssid=s2599169595; uin=o0937886362; skey=@fsQmYSjGH; p_uin=o0937886362; pt4_token=tOVlSqaMPCSUu9Ugwpe6ceD6xYEVaUqZjyqzyC7JG9k_; p_skey=8anozI6XdDWG899lACBORrIjrr4f*FQnFkgrVybg3uY_; fnc=2; Loading=Yes; x-stgw-ssl-info=7c5dada4d52e9c591363171b2262b736|0.145|1523237098.147|1|.|Y|TLSv1.2|ECDHE-RSA-AES128-GCM-SHA256|42500|h2|0; qzmusicplayer=qzone_player_937886362_1523237099240; qqmusic_uin=; qqmusic_key=; qqmusic_fromtag=; 937886362_todaycount=0; 937886362_totalcount=20751; cpu_performance_v8=7'
# 这是返回我的说说内容信息的js路径,需要慢慢找到这个路径
get_url = 'https://user.qzone.qq/proxy/domain/taotao.qq/cgi-bin/emotion_cgi_msglist_v6?uin=937886362&ftype=0&sort=0&pos=0&num=20&replynum=100&g_tk=1278728291&callback=_preloadCallback&code_version=1&format=jsonp&need_private_comment=1&qzonetoken=30dae7408817cca121ec834c6d091b546b6dc0b75a74ba7dbedaf143219da25cf72e09624c2240d2&g_tk=1278728291'
# 构建请求头,我这这里加上了user-agent
headers = {"User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36",
'cookie':cookie}
# 每次都要加带有cookie的headers
b = requests.get(get_url,headers=headers)
print(b.text)
结果(和在空间中看到的一样):
(2)方法2:session.cookies赋值,不用每次请求都带上含有cookie的headers
import requests
s =requests.session() #建立一个session会话
cookie = 'pgv_pvi=270815232; ptui_loginuin=937886362; pt2gguin=o0937886362; RK=rf7xbFDkVu; ptcz=014ce957fb0ff44bcee8bc4101d17bf49abb57ffa854cd0b1caf770a8314f854; luin=o0937886362; tvfe_boss_uuid=3a70612a82d1d77b; pgv_pvid=7697825562; o_cookie=937886362; qz_screen=1920x1080; QZ_FE_WEBP_SUPPORT=1; __Q_w_s__QZN_TodoMsgCnt=1; mobileUV=1_16286309a46_7ca70; __Q_w_s_hat_seed=1; lskey=0001000001b6085bfa9d198e4ccd7311643f2db6b37c66a1ce06d3bb657c0e10265aa2fd146c9d19797dd663; uid=263517280; __layoutStat=9; pgv_si=s3919702016; ptisp=cm; pgv_info=ssid=s2599169595; uin=o0937886362; skey=@fsQmYSjGH; p_uin=o0937886362; pt4_token=tOVlSqaMPCSUu9Ugwpe6ceD6xYEVaUqZjyqzyC7JG9k_; p_skey=8anozI6XdDWG899lACBORrIjrr4f*FQnFkgrVybg3uY_; fnc=2; Loading=Yes; x-stgw-ssl-info=7c5dada4d52e9c591363171b2262b736|0.145|1523237098.147|1|.|Y|TLSv1.2|ECDHE-RSA-AES128-GCM-SHA256|42500|h2|0; qzmusicplayer=qzone_player_937886362_1523237099240; qqmusic_uin=; qqmusic_key=; qqmusic_fromtag=; 937886362_todaycount=0; 937886362_totalcount=20751; cpu_performance_v8=7'
s.cookies['cookie'] = cookie # 吧cookie信息添加到session会话中
# 找到返回数据的js路径链接
get_url = 'https://user.qzone.qq/proxy/domain/taotao.qq/cgi-bin/emotion_cgi_msglist_v6?uin=937886362&ftype=0&sort=0&pos=0&num=20&replynum=100&g_tk=1278728291&callback=_preloadCallback&code_version=1&format=jsonp&need_private_comment=1&qzonetoken=30dae7408817cca121ec834c6d091b546b6dc0b75a74ba7dbedaf143219da25cf72e09624c2240d2&g_tk=1278728291'
# 此时headers中没有cookie
headers = {"User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36"}
b = s.get(get_url) #这里我也没有调用headers中的user-qgent信息
print(b.text)
# 此时结果同上面方法1是一样的,这里就不贴出来了!
1、本人python小白,如有说错,请包含,不喜勿喷,一起进步,一起学习。
版权声明:本文标题:cookie登陆qq空间的两种方式 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1726251334a1062509.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论