如题,登录发送消息什么的都能实现,但是就是获取不到好友列表,我也看了好几个 github 模拟登陆的,发现他们代码里面都有一个这个代码,不清楚什么作用,想问问是不是这个问题导致的
for indexUrl, detailedUrl in (
("wx2.qq.com" , ("file.wx2.qq.com", "webpush.wx2.qq.com")),
("wx8.qq.com" , ("file.wx8.qq.com", "webpush.wx8.qq.com")),
("qq.com" , ("file.wx.qq.com", "webpush.wx.qq.com")),
("web2.wechat.com" , ("file.web2.wechat.com", "webpush.web2.wechat.com")),
("wechat.com" , ("file.web.wechat.com", "webpush.web.wechat.com"))):
fileUrl, syncUrl = ['https://%s/cgi-bin/mmwebwx-bin' % url for url in detailedUrl]
if indexUrl in core.loginInfo['url']:
core.loginInfo['fileUrl'], core.loginInfo['syncUrl'] = \
fileUrl, syncUrl
break
# push_uri 与 base_uri 对应关系(排名分先后)(就是这么奇葩..)
services = [
('wx2.qq.com', 'webpush2.weixin.qq.com'),
('qq.com', 'webpush.weixin.qq.com'),
('web1.wechat.com', 'webpush1.wechat.com'),
('web2.wechat.com', 'webpush2.wechat.com'),
('wechat.com', 'webpush.wechat.com'),
('web1.wechatapp.com', 'webpush1.wechatapp.com'),
]
push_uri = base_uri
for (searchUrl, pushUrl) in services:
if base_uri.find(searchUrl) >= 0:
push_uri = 'https://%s/cgi-bin/mmwebwx-bin' % pushUrl
break
这两处代码有什么作用呢
1
lsido 2017-08-21 23:36:16 +08:00
itchat 里有个 get_friends 方法用于获取好友列表
itchat.get_friends() 没有看源码吗,还是研究一下 |
2
caspartse 2017-08-22 06:21:31 +08:00
通讯录的接口应该是 https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxgetcontact。
早前写了个简单的通讯录导出工具,好像还能用,可以参考下 http://kagent.applinzi.com/wx |
3
vincenth520 OP @lsido 看了,很神奇,其他都没问题,就是获取好友为空
|
4
lsido 2017-08-22 21:30:07 +08:00
@vincenth520 用 get_friends 方法也是空? 调试一下看看
|