利用Python查看微信共同好友

思路

首先通過itchat這個微信個人號接口掃碼登錄個人微信網頁版,獲取可以識別好友身份的數據。這裡是需要分別登錄兩人微信的,拿到兩人各自的好友信息存到列表中。

這樣一來,查共同好友就轉化成了查兩個列表中相同元素的問題。獲取到共同好友信息後,可以通過命令行窗口print出來,也可以寫入txt文件。

利用Python查看微信共同好友

itchat

tchat是一個開源的微信個人號接口,使用python調用微信從未如此簡單——其開發文檔 https://itchat.readthedocs.io/zh/latest/#itchat

首先是安裝itchat模塊,例如:pip install itchat

安裝完成在代碼中通過 import itchat 導入,之後直接調用


利用Python查看微信共同好友


通過以上兩行,就可以拿到好友數據信息了,之後再從中篩選有用的信息進行處理即可。這裡有一處感覺特別酷,就是通過enableCmdQR參數在命令行中展示二維碼:

#在命令行生成登錄二維碼

itchat.auto_login(enableCmdQR=True)

好友信息處理

拿到的好友信息是什麼樣的呢?其實特別有用的並不多,你的微信號和聯繫方式是拿不到的。


利用Python查看微信共同好友


而這裡的UserName,同一個你在不同的微信號中UserName並不相同。所以,在並沒有一個可以特定區分好友的情況下,我們選擇獲取多組信息來組合拼湊成一個整體,這裡我選擇了以下數據組成一個字典dict:

{"City":"","PYQuanPin":"","Province":"","PYInitial":"","Sex":0,'Signature':"",'Signature':"",'NickName':""}

通過以上一個字典八組數據來代表每一位獨立好友信息。接下來在要比較的兩組好友信息列表中,進行查重,這裡我採用了最笨的遍歷方法:


利用Python查看微信共同好友


記錄信息

由於一些特殊字符因為編碼問題無法寫入txt文檔,我選擇既寫入txt又同時print出來相結合的方式:


利用Python查看微信共同好友


實現效果


利用Python查看微信共同好友

回顧

整個流程下來,涉及到的就是itchat接口的使用、將信息賦值給list、獲取兩個list公共元素、將信息寫入txt文件這四部分。

除了itchat接口獲取好友數據看著複雜外,別的都是基礎語法。而itchat相關的代碼就幾行,所以你說,python是不是賊好用?


分享到:


相關文章: