itchat能夠完成的功能
1.登錄慌随,退出登錄战秋,自動(dòng)登錄
2.獲取登錄時(shí)二維碼和其通用唯一識(shí)別碼
3.發(fā)送原信息
4.檢查當(dāng)前的登錄狀態(tài)(是否手機(jī)端確認(rèn))
5.初始化祸穷,獲取各類信息
6.發(fā)起登錄請(qǐng)求蜻势,手機(jī)端確認(rèn)
7.持續(xù)監(jiān)聽各類信息
8.確認(rèn)新信息的類型
9.發(fā)送各類信息等限,以及撤回
10.更新群信息有巧,好友信息
12.得到群名單释漆,好友名單,關(guān)注的微信公眾號(hào)名單
13.得到很多聊天信息的群的名單
14.設(shè)定回復(fù)
15.消息注冊(cè)
16.設(shè)置好友備注
17.置頂好友或群
18.添加好友
19.得到好友篮迎,群或者群成員的頭像
20.創(chuàng)建群
21.設(shè)置群名
22.刪除男图,添加群成員
23.查找好友示姿,群,已關(guān)注公眾號(hào)
24.上傳文件
25.發(fā)送文件逊笆,圖片峻凫,小視頻
26.將登陸狀態(tài)存到本地
27.從本地導(dǎo)出登陸轉(zhuǎn)態(tài)
常見功能實(shí)現(xiàn)demo(代碼已經(jīng)調(diào)試,成功運(yùn)行)
1.對(duì)接圖靈機(jī)器人自動(dòng)回復(fù)览露,以收到好友文本信息為例
tl_keys = ['4f5a97104708494a9f5e9cc425fb3b21',
'd3cbcec8d15e4b78a7598f284582ebac']
# 關(guān)于為什么使用舊版api荧琼,因?yàn)楣俜叫掳鎍pi太毒了,參數(shù)賊多差牛,對(duì)新手不友好
tl_data = {
'key': random.choice(tl_keys),
'info': "",
'userid': 'ahhh',
}
def tl_resp(self, text):
tl_data["info"] = text
tl_data["key"] = random.choice(tl_keys)
resp = requests.post(url=tl_api, data=tl_data)
result = json.loads(resp.text)
if result["code"] == 100000:
return result["text"]
return "人類的本質(zhì)是復(fù)讀機(jī)命锄,和我一起念:{}".format(text)
@itchat.msg_register([itchat.content.TEXT], isFriendChat=True)
def resp_friend(msg):
resp_text = wxbot.tl_resp(msg["Text"])
return resp_text
2.以收到文本信息為例,將信息轉(zhuǎn)發(fā)給另一微信號(hào)(以代碼為例偏化,將另一微信備注設(shè)為boss)
# 用于接收來自朋友間的對(duì)話消息 #如果不用這個(gè)脐恩,朋友發(fā)的消息便不會(huì)自動(dòng)回復(fù)
@itchat.msg_register([itchat.content.TEXT], isFriendChat=True)
def resp_friend(msg):
resp_text = wxbot.tl_resp(msg["Text"])
from_friend = itchat.search_friends(userName=msg["FromUserName"])
if from_friend["RemarkName"] != "":
itchat.send(msg="{} 來自{}\n回復(fù):{}".format(msg["Text"], from_friend, resp_text),
toUserName=itchat.search_friends(remarkName="boss")[0]["UserName"])
if from_friend["RemarkName"] == "":
itchat.send(msg="{} 來自{}\n回復(fù):{}".format(msg["Text"], from_friend, resp_text),
toUserName=itchat.search_friends(remarkName="boss")[0]["NickName"])
return resp_text
3.始終保持自己登陸,如果不小心登陸侦讨,自動(dòng)申請(qǐng)登陸
while 1:
itchat.auto_login()
itchat.run()
print("退出了登錄")