10行代碼-利用Python做一個(gè)微信聊天機(jī)器人(簡單易懂)
我親愛的伙計(jì)們,最近一直忙,導(dǎo)致文章遲遲沒有更新,鄙人心里十分抱歉!
為了回報(bào)我親愛的粉絲,今天鄙人將跟大家做一個(gè)有趣的小玩具~利用強(qiáng)大的python做一個(gè)微信聊天機(jī)器人!
是的也許你聽說過QQ機(jī)器人、聽說過圖靈機(jī)器人,但今天我們只需要10行代碼做一個(gè)微信機(jī)器人!當(dāng)然,如果你想把這個(gè)機(jī)器人做的更加完善,那代碼就不止10行啦,咱這篇文章算是基礎(chǔ)案例吧,讓大家知道有這么回事。
前期準(zhǔn)備:
試驗(yàn)環(huán)境:
操作系統(tǒng):ubantu 16.04
python版本:2.7 or 3.x
主要庫模塊:itchat
注:鄙人的環(huán)境是在linux下啦,windows也一樣的,只不過配置pip的時(shí)候費(fèi)勁點(diǎn)~
什么是itchat?
itchat,相當(dāng)于微信api,掃碼登錄后去抓包爬取信息,還可以post去發(fā)送信息。登錄的時(shí)候直接掃描二維碼,可以獲取大部分的微信信息,包括列表、性別、傳輸消息等等,十分強(qiáng)大。
通過pip安裝itchat庫模塊
pip install itchat
代碼實(shí)現(xiàn):
msg.py
#
-*- coding:utf-8 -*-import itchat
//導(dǎo)入itchat模塊@itchat.msg_register(itchat.content.TEXT) //接收微信消息def
text_reply(msg): print msg.text xte=u"你是誰" retmsg=u“我TMD是機(jī)器人!別煩我!” if
msg==xte: return retmsgitchat.auto_login() //登錄微信函數(shù)(需要掃描二維碼)itchat.run()
//運(yùn)行
注:這里的消息你會(huì)發(fā)現(xiàn)在字符串之前加上了“u”,原因是返回的數(shù)據(jù)為Unicode編碼的,如果不加u的話會(huì)導(dǎo)致格式不統(tǒng)一進(jìn)行報(bào)錯(cuò)。
寫完代碼后保存一下在終端運(yùn)行python msg.py看看效果:
先彈出二維碼,這時(shí)候打開微信掃描登錄:
掃碼成功后進(jìn)入監(jiān)聽狀態(tài),現(xiàn)在可以打開手機(jī)給自己發(fā)消息,如果觸發(fā)關(guān)鍵字“你是誰”將會(huì)發(fā)送我們指定的消息:
怎么樣?是不是很有趣,是不是很簡單,感謝大家的關(guān)注,我們下篇文章將會(huì)在此基礎(chǔ)上做點(diǎn)更有趣的事情~