环境:mac系统
微信版本:2.4.1 for Mac
抓包工具:charles
在mac 微信2.4.1版本中可以直接打开小程序,如下:
第一步:使用charles抓包工具抓取微信指数小程序的数据接口;
这一部分为小程序运行时抓取到的数据;
第二步:获取URL,headers参数
这些是一会请求时需要的参数;
代码如下:
def wechat(keyword):
'''微信指数'''
# search_key = int(time.time()* 10**6)
url = 'https://search.weixin.qq.com/cgi-bin/searchweb/wxindex/querywxindexgroup?query_sug_list=&group_query_sug_list=&group_query_list={}&wxindex_query_list={}&gid=&openid=ov4ns0NiQNXHNXnvY3HHUvsNH68E&search_key=1591068733143239_49619684'.format(keyword,keyword)
headers = {
'Host': 'search.weixin.qq.com',
'Content-Type': 'application/json',
'Connection': 'keep-alive',
'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E217 MicroMessenger/6.8.0(0x16080000) NetType/WIFI Language/en Branch/Br_trunk MiniProgramEnv/Mac',
'Referer': 'https://servicewechat.com/wxc026e7662ec26a3a/9/page-frame.html'
}
r = requests.get(url, headers=headers)
data = r.json()['data']['group_wxindex'][0]
keyword = keyword
wxindex = eval('[' + data['wxindex_str'] + ']')[:-2]
print(keyword, wxindex)
输出:print(wechat(‘百度’))
结果:
PS:在URL中的search_key参数需要有效期为5~10分钟,如果出现一下报错,说明需要更换search_key,如果需要完全自动化的爬虫,需要有更好的自动化获search_key,请自行研究。