Python實現自動發消息自定義內容的操作代碼
有時候讓瞭解放雙手,讓電腦來幫我們自動發一些我們想要發的消息,挺省力的,比如說白天寫好瞭演講稿,晚上要在群裡進行文字演講,那麼我們就可以用腳本來實現自動復制、粘貼和發送文字的功能,從而解放我們自己,不用親自在電腦上反復幹這個Ctrl C/Ctrl V這個累活兒。
還可以把定時多長時間後發送指定內容,這下子就不用坐在電腦前面到點瞭發彈幕瞭。
多長時間發1條消息,又或者1秒發多少條信息,都可自由設置,時間設得短的話,一秒發幾十條都沒問題,隻是太快瞭會形成刷屏的效果…
今天就把這個技巧給大傢分享一下,很簡單,沒有多少代碼。
一、效果
我們先來看一下效果,我這裡設置的是4s後開始發送,間隔0.5s發一次。
用Python實現電腦自動發消息,內容自定義,快慢均可
二、開發環境
- 系統:Windows10 64位
- Python版本:3.9
- Pycharm版本:2021.1.3
- 模塊(庫):os、time、pyautogui、pyperclip
三、關鍵步驟解析
實現的代碼文件主要有兩個,目的分別是:獲取聊天窗口位置和實現自動發送消息功能,用到的庫在上面已經提過瞭,在開始寫代碼之前,先把要用的庫先pip下載裝好,下面就不再說這個瞭。
1.獲取聊天窗口位置(源碼1)
在我們發消息之前,得需要知道聊天窗口的位置在哪,即鼠標停留在哪裡才能定位到聊天窗口的輸入界面,也就是鼠標的x和y坐標是多少。
這裡我用的是os、time和pyautogui這三個庫,獲取鼠標的實時位置的:
try: while True: print("Press Ctrl-C to end") x, y = pag.position() # 返回鼠標的坐標 posStr = "Position:" + str(x).rjust(4) + ',' + str(y).rjust(4) print(posStr) # 打印坐標 time.sleep(0.2) os.system('cls') # 清楚屏幕 except KeyboardInterrupt: print('end....')
隻要程序運行起來之後,每當我們移動鼠標,鼠標的x和y值就會自動發聲改變並打印出來,我們隻需要把聊天窗口調出來,把鼠標定位到聊天的窗口的輸入位置就能獲取到此時的x和y值,有瞭這個x和y值之後,我們才能告訴下面的發消息程序要在哪裡進行粘貼和推送。
當然瞭,獲取鼠標位置的方式有很多種,你們也可以去嘗試一下其他方式的獲取。
2.實現自動發送消息功能
在獲取瞭x和y的值之後,我們要做的當然是寫程序實現“復制文本→粘貼文本→發送消息”,這裡就需要用到 pyautogui 來控制鍵盤和鼠標,用 pyperclip 來控制電腦進行復制和粘貼,以及用 time 這個庫進行一下時間的控制。
首先我們把需要發送的內容提前準備好,放在content裡面,到時候直接拿來用就可以瞭,內容可以自定義修改,比如這樣的:
content = """ 呼叫龍叔! 第二遍! 第三遍! 第四遍! 第五遍! """
我們在運行代碼之後需要切換到聊天界面,中間需要時間去手動做一下這個操作,所以在復制粘貼和發送代碼之前,我們需要留出一些時間給自己,我這裡先設定瞭4s的時間延遲,當然也可以設置幾個小時之後開始發消息。
time.sleep(4)
接下來就是怎麼實現復制粘貼和發送瞭:
for line in list(content.split("\n"))*10: if line: pyautogui.click(669,687) #鼠標點擊並定位到聊天窗口 pyperclip.copy(line) #復制該行 pyautogui.hotkey("ctrl","v") #粘貼,mac電腦則把ctrl換成command pyautogui.typewrite("\n") #發送 time.sleep(5) #每次發完間隔5s
到瞭這裡,所有的東西就已經完成瞭,如果覺得5s發送1條消息太快,可以修改time.sleep(5)裡面的5這個數值,比如說10s發一條消息;如果你設置成0.01秒,那麼就會是一個快速發消息的刷屏效果瞭…
for循環中的“*10”控制循環次數,也就是讓它發10次文本的樣子,也可以設置不讓它循環,把 list(content.split(“\n”))*10 改成 content.split(“\n”) 即可。
大致的方法就是上面這些,需要源碼可以私聊我,你們也可以去嘗試別的方式實現,說白瞭就是自動發消息,實現方式有很多種,比如更高級一點的直接帶著xookie調api發送等等,以及按鍵精靈也是能實現這個功能,更多精彩,等你自己去挖掘瞭。
總結
這個腳本的本質是實現電腦自動發消息,隻是間隔時間的設置導致它也具備快速發消息的功能,不僅僅是QQ,微信也是一樣能用。
基本的原理就是這樣瞭,你們還可以思考一下,如何在這個基礎上,讓程序在幾個小時之後啟動,間隔幾十分鐘發一次,徹底解放自己。
到此這篇關於Python實現自動發消息自定義內容功能的文章就介紹到這瞭,更多相關python自動發消息內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python實現信息轟炸工具(再也不怕說不過別人瞭)
- Python速成篇之像selenium一樣操作電腦詳解
- python編寫腳本之pyautogui的安裝和使用教程
- Python實現自動回復QQ消息功能的示例代碼
- 教你用python實現自動回復QQ消息(不到60行)