python登录微信都没有问题,这个地方是哪里出现错误了,无法发送信息。
users=itchat.search_friends("during")
>>> userName= users[0]['UserName']
Traceback (most recent call last):
File "<pyshell#30>", line 1, in <module>
userName= users[0]['UserName']
IndexError: list index out of range
如果用以下代码:
>>>itchat.send('Hello, filehelper', toUserName='during')
<ItchatReturnValue: {'BaseResponse': {'Ret': 1, 'ErrMsg': '', 'RawMsg': ''}, 'MsgID': '', 'LocalID': ''}>
>>>
during是一个联系人,但是他说没有收到信息,改成微信号有也不行 ,请问哪里出现问题了。
users=itchat.search_friends("during")
后面加上 print(users)看看
应该是获取的users为空了
可以加上判断:
if len(users)!=0:
userName= users[0]['UserName']
IndexError: list index out of range是由于users为空
另外itchat是基于网页版微信,应该大部分账号都没法登录了https://itchat.readthedocs.io/zh/latest/intro/login/
请问如何使用一般账号,利用itchat库登录微信网页版
还是没有办法给userName赋值
微信网页版应该登陆不了吧,这个错是超索引了,users应该是个空
请问如何利用python给自己的联系人发送信息,无论什么方法,无论任何库都行,想用在树莓上面的,和IDLE上面 一样。
是的,users是一个空列表。
只有等微信自己开放接口了
或者你可以百度看看 UI自动化的东西 使用Python自动化操作微信
appium试试吧,这个一般都是爬微信数据,发消息倒是没试过。看文章说可以
https://www.cnblogs.com/Lyonjiayou/p/12525741.html
users=itchat.search_friends(name="during") # 这句改一下,还找不到的话,name="during"换成nickName="during"
# 给during发送消息 author = itchat.search_friends(nickName='during')[0] # 这里during需要是微信昵称 author.send('greeting, during!')
1、如果你的账号可以登录web版微信,可以用《wxpy》库试试,封装了itchats。
2、如果是给自己号发微信,可以使用 《sever酱》
哦对了,github上有新的开源库,如果无法登录微信web版,可以使用官方的基于ipad的登录协议。