如要轉載 麻煩備註好原文出處!!!
最近實現了一些微信的簡單玩法 我們可以通過網頁版的微信微信網頁版,掃碼登入後去抓包爬取資訊,還可以post去傳送資訊。
》》安裝itchat這個庫 pip install itchat
先來段簡單的試用,實現微信的登入,執行下面程式碼會生成一個二維碼,掃碼之後手機端確認登入,就會傳送一條資訊給‘filehelper’,這個filehelper就是微信上的檔案傳輸助手。
import itchat # 登入 itchat.login() # 傳送訊息 itchat.send(u'你好鴨!', 'filehelper')
它會給這個檔案傳輸助手自動傳送你好鴨!
除了登入和傳送訊息我們還可以這麼來玩,往下走~
》》實現微信好友男女比例
想統計下自己微信裡好友的性別比例,當然也是很簡單,先獲取好友列表,統計列表裡性別計數
import itchat # 先登入 itchat.login() # 獲取好友列表 friends = itchat.get_friends(update=True)[0:] # 初始化計數器,有男有女,當然,有些人是不填的 male = female = other = 0 # 遍歷這個列表,列表裡第一位是自己,所以從"自己"之後開始計算 # 1表示男性,2女性 for i in friends[1:]: sex = i["Sex"] if sex == 1: male += 1 elif sex == 2: female += 1 else: other += 1 # 總數算上,好計算比例啊~ total = len(friends[1:]) # 好了,列印結果 print (u"男性好友:%.2f%%" % (float(male) / total * 100)) print (u"女性好友:%.2f%%" % (float(female) / total * 100)) print (u"其他:%.2f%%" % (float(other) / total * 100))
執行結果:
》》實現微信自動回覆
接著來實現一個類似qq上的自動回覆,原理就是接收到訊息,就發訊息回去,同時發一條給檔案助手,就可以在檔案助手中統一檢視訊息。
程式碼很簡單,來看看
#coding=utf8 import itchat # 自動回覆 # 封裝好的裝飾器,當接收到的訊息是Text,即文字訊息 @itchat.msg_register('Text') def text_reply(msg): # 當訊息不是由自己發出的時候 if not msg['FromUserName'] == myUserName: # 傳送一條提示給檔案助手 itchat.send_msg(u"[%s]收到好友@%s 的資訊:%s\n" % (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(msg['CreateTime'])), msg['User']['NickName'], msg['Text']), 'filehelper') # 回覆給好友 return u'[自動回覆]您好,我現在有事不在,一會再和您聯絡。\n已經收到您的的資訊:%s\n' % (msg['Text']) if __name__ == '__main__': itchat.auto_login() # 獲取自己的UserName myUserName = itchat.get_friends(update=True)[0]["UserName"] itchat.run()
執行後會保持登入狀態,開啟自動回覆模式,手機上檢視:
當然,除了文字Text資訊,還可以接收圖片(表情包算圖片),語音,名片,地理位置,分享和型別為Note的資訊(就是有人提示類的訊息,例如撤回訊息),把裝飾器寫成下面形式即可實現
@itchat.msg_register(['Map', 'Card', 'Note', 'Sharing', 'Picture','Text'])
如要轉載 麻煩備註好原文出處!!!
完成!