模擬登錄網頁微信實現微信聊天機器人itchat-python

2021-12-26 樂進說
前言

前一段時間在微信群裡出現好多聊天"機器人" , 可以回答問題跟朋友互動。那麼微信上的聊天機器人是如何實現的呢?或者你是否期望每天定時給女神早安 ,晚安 ;每天早上提醒女神今天天氣如何等等。程式設計師樂進為大家提供一種實現方式。基於網頁版本微信以及 python 版本 itchat 。具體實現方式如下正文

正文

安裝 itchat :  pip3 install itchat

跑一下demo

import itchat, time
from itchat.content import *

def notiFilehelper():
    itchat.auto_login(enableCmdQR=2,hotReload=True)
    itchat.run(blockThread=False)
    itchat.send('Hello, filehelper', toUserName='filehelper')

我的開發是mac ,因為最終是需要放到雲伺服器上運行的(雲伺服器為centos python運行在centos 與在mac上運行 環境差別不大),所以需要在terminal顯示微信登錄二維碼。(這裡需要注意 itchat.auto_login 方法參數需要設置 enableCmdQR=2 ,不然terminal 顯示二維碼不全或者無法識別;hotReload=True 可以保留一段時間登錄狀態,不用每次發消息都掃碼登錄。)微信掃碼登錄後本地跑一下 ,完美運行 , 文件傳輸助手如期收到了消息,很順利。接下來調試群消息。

def sendToGroup(content):
    itchat.get_chatrooms(update=True)
    roomNickName = 'YourGroupName'
    candidates = itchat.search_chatrooms(roomNickName)
    for room in candidates:
        if room['NickName'] == roomNickName:
            userName = room['UserName']
            break

    nowDateTime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
    print('現在時間:' + nowDateTime + '\n' + content )
    itchat.send(content, toUserName=userName)

遇到第一個報錯是找不到對應的群,後來發現需要把群保存在通訊錄中。然後Python的一些語法不熟悉的話還是要花一點時間調一下的。調通之後調定時任務。

首先想到的肯定是 crontab ,我搜了一下 Python也有一個包可以實現類似的功能,偷懶就用 Python 的 apscheduler , 當然這裡實現方案很多,大家可以根據自己個人喜好自行選擇  , 安裝 apscheduler 

pip3 install apscheduler 

使用也比較簡單

比如每天晚上9點提醒自己總結自己的一天

import time
from apscheduler.schedulers.blocking import BlockingScheduler

scheduler = BlockingScheduler()
scheduler.add_job(dailyReview, 'cron', day_of_week = '0-6',hour = 21,minute = 00 , second =0)
scheduler.start()

scheduler.add_job 第一個參數為要執行的python 方法, day_of_week 0-6 表示周一到周日 剩下的參數就不解釋了。

調試的時候可以用

scheduler = BlockingScheduler()
scheduler.add_job(dailyReview, 'interval', seconds=5)

每隔5秒執行一次dailyReview方法

注意: 目前微信安全策略會攔截一部分微信帳號登錄網頁版本微信, 請保證自己的微信帳號可以正常掃碼登錄 http://wx.qq.com

最新的可行方案請查閱

相關焦點

  • 【撩妹合集】微信聊天機器人,推送天氣早報、睡前故事、精美圖片分享
    接下來我會分享怎麼使用 Python 實現微信自動聊天,微信每日天氣早報、睡前故事及精美圖片推送。學會之後,迎娶白富美,走上人生巔峰就指日可待啦。(✪ω✪)不信咱先看看效果展示:(皮皮是我家貓的名字,所有我把命令設成這樣子的)
  • 對不起,分手吧,我愛上了你做的聊天機器人
    接下來我會分享怎麼使用 Python 實現微信自動聊天,微信每日天氣早報、睡前故事及精美圖片推送。  不信咱先看看效果展示:  (皮皮是我家貓的名字,所有我把命令設成這樣子的)     >六、自動聊天機器人(圖靈機器人)七、Git 地址一、Python 登錄微信   Python 中有個 itchat 包,這是個開源的微信個人號接口,非常簡單就可以實現在 python 對微信的操作。
  • python + wxpy, 和你聊天的可能是我的機器人小表弟
    其實就是網頁登陸的實現),就可以在python上給你的好友發信息。那個每天自動說晚安其實就是網頁爬蟲爬一些話,然後發給你指定的朋友,我在實現它的過程中發現了另一個好玩的東西,也就是這篇文章的主題:聊天機器人,也就是圖靈機器人。用WXPY把微信和圖靈機器人連結起來,當收到你指定好友的信息時,你的圖靈機器人就會自動回復,而且只需要幾行代碼。
  • 用Python教你通過微信來控制電腦攝像頭
    如果說強大的標準庫奠定了Python發展的基石,豐富的第三方庫則是python不斷發展的保證
  • 微信還能這樣玩
    順便再向大家道歉,我的後臺機器人有些愚蠢,對部分朋友說了讓人有歧義的話,所以小編已經把後臺的機器人關掉了,方便和大家交流。          下面開始言歸正傳。繼昨天向大家介紹了一款查看撤回信息的大殺器後,今天向大家介紹一下另外一款神器——微信自動回復機器人。
  • 如何製作微信聊天機器人&群聊助手
    前言最近有夥伴私信問我有沒有可以自動回復、提醒的微信聊天機器人,去年在 Github 上正好看到過
  • 【QQ/微信個人號變身機器人】炸群+遠程監控個人PC的嘗試
    今天來簡單談談有關QQ機器人和微信機器人一些玩法。視頻已經錄過了,所以我就不寫太詳細了。目錄的話大概是→做個QQ機器人扔群裡和小冰炸群→使用QQ消息控制自己電腦的網易雲音樂→微信個人號變身機器人關鍵詞:QQ/微信機器人;Python模擬滑鼠、鍵盤輸入;Python調用系統命令環境:Windows、Python 3.5、網易雲音樂桌面版庫
  • 微信網頁版在線登錄
    微信是一款數億人都在使用的手機聊天軟體,這是一款騰訊官方推出的聊天交流app,支持通過手機網絡發送語音簡訊、視頻、圖片和文字,支持視頻聊天,以及通過朋友圈分享自己的生活。
  • 微信電腦版網頁版登錄
    微信同QQ一樣,是騰訊官方推出的一款全民聊天工具,英文名Wechat。微信電腦版客戶端和微信網頁版相似,但使用起來更加方便。微信PC版界面非常的簡潔,可用作即時聊天和文件分享,整個界面無廣告,玩遊戲聊天兩不誤!
  • Here comes itchat
    首先我們需要引入這個庫:import itchat然後,我們需要登陸自己的微信帳號。此時我們使用的是網頁版微信帳號:itchat.autologin()這行會彈出一個二維碼,只需用微信掃一掃然後手機登陸就行啦。登陸微信了之後第一件事是什麼?!發微信呀。
  • 微信網頁版,為什麼要二維碼登錄?
    本文將眼光聚焦到微信網頁版&PC端的二維碼登錄現象,分析了筆者對設置二維碼登錄原因的可能性分析。最近在臨摹一個微信網頁版的產品,開始繪製登錄頁面時,就陷入了深深的糾結中——不管是使用PC客戶端的微信還是網頁版的微信,最難受的就是登錄了。
  • 三步教你用Node做一個微信哄女友神器,小白可上手
    不知道大家最近有沒有被python版的《微信每日說》刷屏呢,他可是霸佔了github的python熱門快兩周了。我們前端的小夥伴是不是也看著有點想入手呢,但是畢竟是不那麼熟悉的python語言,學起來和用起來肯定沒有那麼舒服。想想要是用我們熟悉的js語言做一個屬於自己的哄女友神器是不是很開心呢!😆哄女友我們前端開發人員也是很認真的,自動哄女友神器我們也可以做!
  • 微信電腦客戶端在線登錄
    微信是騰訊為超過三億人使用的微信的用戶開發的一款PC微信版本。最初的版本是微信網頁版,隨之升級開發為客戶端的形式,也就是說它是一種最新網頁版的形式。微信電腦版讓用戶用手機在電腦端上掃碼登錄,無需輸入帳號和密碼。
  • 微信小商店網頁版在哪裡 網頁版登錄入口介紹
    微信小商店的網頁版入口位置在哪裡可以進入,進入網頁版微信小商店管理後臺的具體步驟是什麼呢,這裡我們來了解下如何在電腦網頁上登錄小商店商家後臺。1、個人店鋪:可微信搜索「小商店助手」進入手機管理後臺2、企業和個體工商戶:暫無手機端管理後臺,僅可在PC端操作,可微信搜索「小商店助手」點擊「進入我的店」選擇小商店登錄,並可查看詳細登錄指引。
  • 免費的QQ微信消息推送機器人,想要不?
    發到QQ現在已經不行了;發到微信還能用「itchat」,但必須保持手機在線且電腦不能登錄,還容易掉線。這兩天發現個好東西!發到QQ用「Qmsg醬」,發到微信用「Server醬」Qmsg醬是什麼QQ消息推送機器人,用來通知自己消息的免費服務。
  • 「微信群合影2.5.0」- 微信網頁版帳號不能登錄解決辦法,掃碼登錄
    」- 一鍵生成微信全家福「 微信群合影 2.5.0 」版本更新: 在一鍵生成全家福的過程中,有一些用戶是不能登錄微信網頁版的註:請嘗試登錄微信網頁版:https://wx.qq.com ,如果網頁版不能登錄,才使用此辦法。
  • 微信多點登錄,消息漫遊,假如讓你來實現?
    有朋友問:微信如何實現手機端、PC端同時登錄,同時收消息?微信能不能實現,換一個手機,仍能拉取到歷史消息?
  • 如何實現微信電腦版雙開或多開?再也不用擔心微信被退出了
    隨著微信用戶數量的漸增,微信的功能越來越強大,尤其是微信電腦端給生活和辦公提供了諸多便利。但是微信電腦端不同於QQ,一臺電腦上可以打開多個QQ登錄界面,但是微信卻只能打開一個。用他人的微信時,需要退出後才能登錄,很是麻煩。接下來介紹三種方法,實現一臺計算機登錄兩個或多個微信。第一種方法:微信網頁版和電腦版搭配使用熟知微信的小夥伴應該知曉微信還有一個網頁版。打開瀏覽器後,在搜索文本框中輸入「微信網頁版」,在官網頁面就即可登錄。
  • JustAuth 1.15.9 版發布,支持飛書、喜馬拉雅、企業微信網頁登錄
    新增修復並正式啟用 飛書 平臺的第三方登錄AuthToken 類中新增 refreshTokenExpireIn 記錄 refresh token 的有效期PR合併 Github #101:支持喜馬拉雅登錄合併 Github #105:支持企業微信網頁授權登錄合併
  • 微信怎麼恢復誤刪的聊天記錄?無需密碼登錄,也能快速查看!
    微信怎麼恢復誤刪的聊天記錄?無需密碼登錄,也能快速查看! 微信怎麼恢復誤刪的聊天記錄?