Python新世界

利用Python来获取QQ以前用的头像!看来以前都是杀马特,神级

2018-08-23  本文已影响14人  919b0c54458f

叙述

步骤:

(进群:548377875   获取数十套PDF哦!)

代码如下:

from selenium import webdriver

import time

import requests

#设置无头模式

opt=webdriver.ChromeOptions()

opt.add_argument('--headless')

b=webdriver.Chrome(options=opt)

#打开目标网址并输入正确的qq和密码

b.get('https://xui.ptlogin2.qq.com/cgi-bin/xlogin?appid=715030902&daid=70&pt_no_auth=0&s_url=http://qzone.qq.com')

b.find_element_by_xpath('//*[@id="switcher_plogin"]').click()

b.find_element_by_xpath('//*[@id="u"]').send_keys('你的QQ')

b.find_element_by_xpath('//*[@id="p"]').send_keys('你的密码')

b.find_element_by_xpath('//*[@id="login_button"]').click()

#使用sleep防止还未跳转就抓取cookie,具体时间根据自己网速写

time.sleep(2)

#使用replace方法去掉uin最前面的字符 'o'得到正确的uin

my_uin=str(b.get_cookie('uin')['value']).replace('o','')

my_skey=b.get_cookie('skey')['value']

b.quit()

uin='uin=%s'%my_uin

skey='skey=%s'%my_skey

qq=input('输入查询QQ:')

#将上面获取到的uin和skey写入headers中获取返回的json数据

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.26 Safari/537.36 Core/1.63.5702.400 QQBrowser/10.2.1893.400',

'Cookie':uin+skey

}

# 使用try方法 因服务器繁忙获取不到 ,偶尔会发生并抛出异常

try:

resp = requests.get('http://qlist.qlogo.cn/file_list?src=1&uin=%s&md5=&start_idx=1&end_idx=500'%qq,headers=headers)

final_data=resp.json()

print('共%d张'%final_data['total_num'])

#获取每个头像的地址及对应时间戳(可以转换为本地时间,自行发挥)

for a in final_data["file_list"]:

print(a['base_url']+'140',a['timestamp']) #url后面+140即获取小头像,640为大头像,防止获取不到

except KeyError:

print('貌似开小差了,请重试! ')

最后利用python的requests库(强烈推荐使用这个库,简单粗暴)获取就OK了!

附图:

雏形就是以上了,需要做下载图片功能或者封装成函数反复查询的的请自行发挥,太懒了,不想写了 。

上一篇下一篇

猜你喜欢

热点阅读