-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
itchat自動(dòng)登錄(實(shí)現(xiàn)自動(dòng)登錄)
大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于itchat自動(dòng)登錄的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。
ChatGPT國(guó)內(nèi)免費(fèi)在線使用,能給你生成想要的原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
你只需要給出你的關(guān)鍵詞,它就能返回你想要的內(nèi)容,越精準(zhǔn),寫(xiě)出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶端,官網(wǎng):https://ai.de1919.com
本文目錄:
一、微信怎么看共同好友?
微信看不了共同的好友,微信現(xiàn)在還沒(méi)這個(gè)功能。
但是可以通過(guò)一些細(xì)節(jié)來(lái)看,比如你的好友也是對(duì)方的好友,在對(duì)方發(fā)朋友圈點(diǎn)贊的人里,如果同時(shí)有好友點(diǎn)贊了,就可以看到好友的頭像。
微信(WeChat)是騰訊公司于2011年1月21日推出的一款面向智能終端的即時(shí)通訊軟件。
微信為用戶提供聊天、朋友圈、微信支付、公眾平臺(tái)、微信小程序等功能,同時(shí)提供城市服務(wù)、攔截系統(tǒng)等服務(wù)。2012年4月,騰訊公司將微信推向國(guó)際市場(chǎng),更新為“Wechat”。
二、如何實(shí)現(xiàn)微信自動(dòng)發(fā)節(jié)日祝福
剛剛回答過(guò)類似的問(wèn)題,微信本身有群發(fā)功能但一次只能群發(fā)200人,你可以試下下面這個(gè)工具??梢匀喊l(fā)所有人,還可以帶上對(duì)方的昵稱或尊稱,顯得比較走心,讓好友不覺(jué)得你是群發(fā)的。
第一步,打開(kāi)里德助手:
第二步,點(diǎn)擊一鍵群發(fā):
第三步:選擇親密群發(fā):
第四步,編輯消息,這里可以選圖文,或者只發(fā)文字,還可以設(shè)置發(fā)送的間隔時(shí)間,編輯好之后點(diǎn)擊下一步:
第五步,選擇部分好友,選中需要發(fā)送到的標(biāo)簽好友,點(diǎn)擊前往群發(fā)消息跳轉(zhuǎn)到微信界面點(diǎn)擊開(kāi)始群發(fā)就好啦。
這個(gè)就是要提前把需要發(fā)送的好友添加到一個(gè)標(biāo)簽里,通過(guò)標(biāo)簽批量發(fā)送,還是很實(shí)用的,覺(jué)得好用就采納唄
三、微信加長(zhǎng)代碼撤回消息
自從微信出了這個(gè)消息撤回功能小編我都已經(jīng)快被折磨死了,小編本來(lái)就是個(gè)好奇心比較重的人,微信出了這個(gè)功能之后小編感覺(jué)身體一天不如一天了,每次看著女神發(fā)來(lái)的信息又撤回,可謂是心里癢癢啊。所以小編就寫(xiě)了一個(gè)微信消息撤回捕捉器,下面就讓小編教你怎么擺脫單身逆襲白富美。
1,模塊介紹
首先的話要實(shí)現(xiàn)消息撤回捕捉得用到python上一個(gè)十分強(qiáng)大的庫(kù):itchat。如果大家沒(méi)有使用過(guò)的話小編就來(lái)介紹一下:
Project description
itchat is a open souce wechat api project for personal account.
It enables you to access your personal wechat account through command line.
以上意思就是:itchat是一個(gè)面向個(gè)人賬戶的開(kāi)源微信api項(xiàng)目。您可以通過(guò)命令行訪問(wèn)您的個(gè)人微信帳戶。 所以說(shuō)我們今天就要用到這個(gè)庫(kù),首先我們要 :
pip install itchat
2,模塊功能熟悉
小編這里考慮到有些小伙伴從來(lái)沒(méi)用過(guò)這個(gè)模塊,所以下面會(huì)對(duì)這個(gè)模塊進(jìn)行一個(gè)簡(jiǎn)單的講解。
2.1 如何登錄微信
既然我們要捕捉微信的撤回信息那第一步肯定是要先登錄微信,登錄微信非常簡(jiǎn)單只需要兩行代碼:
import itchat?itchat.login()
這樣就好了,是不是特別簡(jiǎn)單,然后運(yùn)行之后就會(huì)出現(xiàn)一個(gè)二維碼,掃描之后再手機(jī)上面授權(quán)登錄,控制臺(tái)就會(huì)顯示你是否登錄成功。
·Login successfully as .
這樣就說(shuō)明你登錄成功了,但是這邊如果是新創(chuàng)建的微信和長(zhǎng)期不使用的微信的話是無(wú)法登錄網(wǎng)頁(yè)版微信的,所以這里也會(huì)導(dǎo)致登錄不上。如果登錄不上,那也是沒(méi)有辦法的
2.2 獲取好友列表
import itchat
itchat.auto_login(hotReload=True)
friends = itchat.get_friends() # 好友列表
print(friends)
使用get_friends()這個(gè)函數(shù)就能獲取到好友列表的所有好友信息,包括昵稱,備注名,地址,個(gè)性標(biāo)簽,性別等等。
[{'UserName':
'@7c2215e17edf4b193f125d6ecf944abcaf19ba72e3eb24b8442d5e32d4a8be92',
'City': '', 'DisplayName': '', 'PYQuanPin': '', 'RemarkPYInitial':
'', 'Province': '', 'KeyWord': '', 'RemarkName': '', 'PYInitial': '',
'EncryChatRoomId': '', '**': '', 'Signature': '', 'NickName': '**',
'RemarkPYQuanPin': '', 'HeadImgUrl': '**'
這里我就隨便復(fù)制了一個(gè)好友的信息,關(guān)于到隱私的問(wèn)題我就把信息全部用**代替了,我們重點(diǎn)是分析一下這些信息的內(nèi)容,比如最開(kāi)始的UserName這個(gè)是用戶的唯一標(biāo)識(shí),相當(dāng)于身份證號(hào)碼一樣的,所有的好友UserName都是不一樣的,然后是NickName:這是好友的昵稱,HeadImgUrl:這是好友的頭像地址,還有一些就不一一介紹了,大家感興趣的話可以自己去了解一下
2.3 發(fā)送信息給好友
我們現(xiàn)在準(zhǔn)備發(fā)送一條信息給好友,具體怎么操作呢?看下面代碼:
import itchat
itchat.auto_login(hotReload=True)
itchat.send("人生苦短,我學(xué)python",toUserName="@c4326bda513bf7cdd19f1fa03dbf7e7bc3bbc57e5abb71fd580b2c3c32cddd99")
itchat.send()這個(gè)函數(shù)可以放兩個(gè)參數(shù),第一個(gè)你要發(fā)送給好友的信息,第二個(gè)指定好友也就是toUserName=上面所說(shuō)的唯一身份標(biāo)識(shí)UserName但是上面方法我覺(jué)得還是有點(diǎn)不妥,然后我就改進(jìn)了一下:
import itchat
itchat.auto_login(hotReload=True)friends = itchat.get_friends()nickName = '你禿我不禿'
for i in friends:
if '你禿我不禿' == i['NickName']:
itchat.send('人生苦短,我學(xué)python', toUserName=i['UserName'])
break
這樣我就可以發(fā)信息給任意好友,通過(guò)好友的昵稱哎好友列表中進(jìn)行查找,找到的話我就獲取該好友的UserName然后發(fā)送消息,也可以通過(guò)對(duì)好友的備注名RemarkName查找,大家可以根據(jù)自己的喜好選擇
2.4 裝飾器
關(guān)于itchat這個(gè)模塊還有很多功能,小編在這里就不做過(guò)多講解了,我們只要了解消息撤回所需要的知識(shí)點(diǎn)就行了,然后我們進(jìn)行最后一個(gè)內(nèi)容,裝飾器 關(guān)于裝飾器小編這邊簡(jiǎn)單介紹一下,裝飾器的是勇于擴(kuò)展原來(lái)函數(shù)功能的一種函數(shù),目的是再不改變?cè)瘮?shù)名的情況下給函數(shù)增加新的功能。 例如我喜安智又一個(gè)函數(shù)foo(),你并不知道函數(shù)的實(shí)現(xiàn)原理,你肯定也不能去修改這個(gè)函數(shù)的代碼而你需要給這個(gè)函數(shù)添加一個(gè)輸出開(kāi)始運(yùn)行時(shí)間和結(jié)束運(yùn)行時(shí)間的功能,改如何實(shí)現(xiàn),這時(shí)候你就可以用裝飾器了:
import time
def show_time(foo):
def inner():
print(time.time()) foo() print(time.time()) return inner
@show_timedef foo(): passfoo()
上面這段代碼的意思:首先@show_time就是使用一個(gè)裝飾器show_time,這個(gè)時(shí)候就會(huì)將裝飾器的函數(shù),也就是foo()作為參數(shù)傳遞給裝飾器show_time(),我們知到函數(shù)作為返回值的話,執(zhí)行的其實(shí)是該函數(shù),所以程序會(huì)執(zhí)行內(nèi)部函數(shù)inner(),此時(shí)輸出開(kāi)始運(yùn)行時(shí)間,然后調(diào)用foo()函數(shù),最后輸出結(jié)束運(yùn)行時(shí)間,這樣就實(shí)現(xiàn)了一個(gè)功能擴(kuò)展,這也是很典型的面向切面編程思想。
3,如何監(jiān)聽(tīng)好友撤回的信息
其實(shí)到了這里我們就已經(jīng)完成了消息的監(jiān)聽(tīng)只需要稍加修改就好了,但是這個(gè)程序還是有一點(diǎn)問(wèn)題的,就是所有的消息我們都需要去保存,好友正常發(fā)送過(guò)來(lái)的消息我們直接就能看到保存下來(lái)不是多此一舉嗎,我們的目的是想知道好友撤回了什么內(nèi)容,這里就涉及到如何監(jiān)聽(tīng)好友是否撤回了信息這個(gè)問(wèn)題了,其實(shí)也不難,Content模塊為我們提供了NOTE類型,這個(gè)類型指的是系統(tǒng)消息,所以我們可以自定義一個(gè)函數(shù)用來(lái)監(jiān)聽(tīng)系統(tǒng)消息:
import itchat
from itchat.content import * # 導(dǎo)入itchat下的content模塊
itchat.auto_login(hotReload=True)
@itchat.msg_register(NOTE)
def note_info(msg): # 監(jiān)聽(tīng)系統(tǒng)消息
print(msg)
itchat.run()
運(yùn)行程序,我們撤回一條信息測(cè)試一下,輸出的結(jié)果如下:
'DisplayName': '', 'ChatRoomId': 0, 'KeyWord': '', 'EncryChatRoomId': '', 'IsOwner': 0}>, 'Type': 'Note', 'Text': '你撤回了一條消息'}
則例截取的部分的內(nèi)容這樣會(huì)發(fā)小撤回信息的文本內(nèi)容“你撤回了一條信息”,如意要想知道好友是否撤回了消息就很簡(jiǎn)單了,判斷一下,msg['Text']=='你撤回了一條信息'就行了
4, 實(shí)現(xiàn)微信消息撤回捕捉功能
現(xiàn)在關(guān)于程序的每個(gè)步驟代碼到這里也就分析完了,接下來(lái)就是對(duì)所有的代碼進(jìn)行一個(gè)總結(jié)以下就是所有代碼的總結(jié):
現(xiàn)在我們來(lái)測(cè)試一下首先我讓我兩個(gè)朋友一人給我發(fā)了一條信息:
四、微信微信怎么設(shè)置自動(dòng)回復(fù)
微信個(gè)人帳號(hào)不具備自動(dòng)回復(fù)功能。
以上就是關(guān)于itchat自動(dòng)登錄相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
itchat怎么一直登錄(無(wú)法用itchat登錄網(wǎng)頁(yè)微信)
找IT眾創(chuàng)平臺(tái)(找it眾創(chuàng)平臺(tái)app)
包頭放心景觀設(shè)計(jì)廠家地址(包頭放心景觀設(shè)計(jì)廠家地址及電話)
商業(yè)街遮陽(yáng)景觀設(shè)計(jì)(商業(yè)街遮陽(yáng)景觀設(shè)計(jì)效果圖)