思路
首先通過itchat這個微信個人号接口掃碼登錄個人微信網頁版,獲取可以識别好友身份的數據。這裡是需要分别登錄兩人微信的,拿到兩人各自的好友信息存到列表中。
這樣一來,查共同好友就轉化成了查兩個列表中相同元素的問題。獲取到共同好友信息後,可以通過命令行窗口print出來,也可以寫入txt文件。
itchat
tchat是一個開源的微信個人号接口,使用Python調用微信從未如此簡單——其開發文檔 https://itchat.readthedocs.io/zh/latest/#itchat
首先是安裝itchat模塊,例如:pip install itchat
安裝完成在代碼中通過 import itchat 導入,之後直接調用
通過以上兩行,就可以拿到好友數據信息了,之後再從中篩選有用的信息進行處理即可。這裡有一處感覺特别酷,就是通過enableCmdQR參數在命令行中展示二維碼:
#在命令行生成登錄二維碼
itchat.auto_login(enableCmdQR=True)
好友信息處理
拿到的好友信息是什麼樣的呢?其實特别有用的并不多,你的微信号和聯系方式是拿不到的。
而這裡的UserName,同一個你在不同的微信号中UserName并不相同。所以,在并沒有一個可以特定區分好友的情況下,我們選擇獲取多組信息來組合拼湊成一個整體,這裡我選擇了以下數據組成一個字典dict:
{"City":"","PYQuanPin":"","Province":"","PYInitial":"","Sex":0,'Signature':"",'Signature':"",'NickName':""}
通過以上一個字典八組數據來代表每一位獨立好友信息。接下來在要比較的兩組好友信息列表中,進行查重,這裡我采用了最笨的遍曆方法:
記錄信息
由于一些特殊字符因為編碼問題無法寫入txt文檔,我選擇既寫入txt又同時print出來相結合的方式:
實現效果
回顧
整個流程下來,涉及到的就是itchat接口的使用、将信息賦值給list、獲取兩個list公共元素、将信息寫入txt文件這四部分。
除了itchat接口獲取好友數據看着複雜外,别的都是基礎語法。而itchat相關的代碼就幾行,所以你說,python是不是賊好用?
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!