程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python WeChat automation tool development series 02_Automatically obtain chat information of multiple WeChat friends (available in July 2022)

編輯:Python

前言

一個需求
需要利用Python+第三方庫wxauto 用於微信上自動獲取聊天信息,從而根據自己需求對信息自動進行二次處理,
比如自動回復,再比如自動發送文件或者其他.
--- 記錄於2022年07月

使用Python3的第三方庫wxauto, 它適用於Windows的微信客戶端

官網: https://github.com/cluic/wxauto


功能

This is the second part of the WeChat automation tool development series

The main function of the code

PythonGet WeChat designation多個用戶chat information


原因

這邊使用wxauto來進行開發,而不是itchat,原因如下

itchat都是之前的教程,
本質上是用的微信的網頁端的接口來進行數據交互的.

如果你想要使用itchat的代碼的話,

  • 1、先測試下你的賬號是否還可以登錄微信網頁端

https://wx.qq.com/
騰訊官方雖然沒有正式的發表聲明,但是你搜一下可以看到相關信息
大概從去年開始(時間不太確定),大部分微信賬號都不可以繼續登錄微信網頁端,只有少部分賬號還可以登錄.
原因未知.

  • 2、如果可以登錄微信網頁版 那麼你可以關閉這個博客去網上找下itchat的代碼來學習運行下,

如果登錄失敗,那麼或許你可以嘗試下wxauto也就是這裡所說的方法來運行下.


環境

Windows 10
Python 3.8.10
Windows 10的微信客戶端版本:3.7.5.23 (英文版本)

注:微信客戶端中文版跟英文版都可以
沒什麼太大區別.

安裝

安裝Python3的第三方庫wxauto,具體步驟如下

官網: https://github.com/cluic/wxauto

在cmd窗口執行下面命令進行安裝

  • 安裝第三方庫wxauto
python3 --version
python3 -m pip install wxauto -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 查看wxauto是否安裝成功
python3 -c "import wxauto; print(wxauto.VERSION)"

使用步驟

1. 新建main02.py

這邊第一篇只介紹獲取默認窗口chat information

from wxauto import *
# 獲取當前微信客戶端
wx = WeChat()
# 獲取會話列表
wx.GetSessionList()
###############################
# 1、獲取默認窗口聊天信息
###############################
def get_default_window_messages():
# 默認是微信窗口當前選中的窗口
# 輸出當前聊天窗口聊天消息
msgs = wx.GetAllMessage
for msg in msgs:
print('%s : %s' % (msg[0], msg[1]))
## 獲取更多聊天記錄
wx.LoadMoreMessage()
msgs = wx.GetAllMessage
for msg in msgs:
print('%s : %s' % (msg[0], msg[1]))
###############################
# 2、Get the chat information of the specified window
###############################
def get_window_messages_from_list(whos):
for who in whos:
print("************************************\n")
print("Start switching chat window to:", who)
wx.ChatWith(who)
print("The current chat window is :", who)
msgs = wx.GetAllMessage
for msg in msgs:
print('%s : %s' % (msg[0], msg[1]))
print("************************************\n")
if __name__ == '__main__':
# get_default_window_messages()
# 單個
whos = ['文件傳輸助手'] # Applicable to the Chinese version of WeChat
# whos = ['File Transfer'] # 適用於 WeChat in English
# 多個
# whos = ['文件傳輸助手', 'Your WeChat friend notes' ] # Applicable to the Chinese version of WeChat
get_window_messages_from_list(whos)

2. 打開微信

  • windows10下打開微信客戶端
  • 正常掃碼登錄
  • 打開微信窗口到前面,不要最小化或者縮小到底部菜單

3. 執行代碼

打開cmd窗口,在cmd窗口執行:

如果沒有安裝第三方庫,參考上面的安裝步驟進行安裝再執行下面命令

cd 你的main02.py所在路徑
python3 main02.py

4. 輸出

cmd窗口
Normally output the chat information of your single friend or the default WeChat window of multiple friends

後續

這邊剛開始寫一下系列文章,想發展下自己的博客和微信公眾號賬號

如果對你有幫助,方便的話可以關注下 博客左側的微信公眾號(點擊我的頭像進入個人中心,位於左側下方)

如有問題的話,也可通過公眾號直接留言,這邊有微信提醒,可以幾小時內及時回復

也可直接在CSDN博客留言或者私信留言,這個沒有微信提醒,所以這邊可能一天或者幾天內給回復

微信公眾號所在位置:打開個人中心也就是這個鏈接
https://blog.csdn.net/xiaozi_001?type=blog
左側下方

如有需求,

想要對微信進行一些自動化操作來提高效率:

比如

  • 自動群發不同聊天信息到幾個微信群裡

  • 自動群發不同的圖片到幾個微信群裡

  • 自動群發不同的文件到幾個微信群裡


  • 如果你本身懂代碼的話

如果你本身懂代碼的話, 直接看第三方庫wxauto的使用,自己來寫就可以了,

博客後續也會基於這個系列繼續更新.

歡迎點贊留言提出問題,方便的話 點贊收藏 關注下微信公眾號

  • 如果你本身不懂代碼

只是想要一個簡單的微信處理工具來滿足自己的需求的話

可以微信公眾號留言或者私信留言,

發下你的具體需求,這邊後續根據你的需求進行下二次開發

如有需求,You can follow the WeChat public account on the left side of the blog to leave a message or leave a message directly

前者可以幾小時內及時回復

後者可能看的不及時,大概一天或者幾天內有回復


其他

如有問題 歡迎提出

如有疑問 歡迎留言

如有作用 歡迎點贊

如有失效 歡迎留言

2022年07月 可用


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved