佳木斯湛栽影视文化发展公司

主頁 > 知識(shí)庫(kù) > Python實(shí)現(xiàn)自動(dòng)發(fā)消息自定義內(nèi)容的操作代碼

Python實(shí)現(xiàn)自動(dòng)發(fā)消息自定義內(nèi)容的操作代碼

熱門標(biāo)簽:銀行業(yè)務(wù) 鐵路電話系統(tǒng) 服務(wù)器配置 智能手機(jī) 檢查注冊(cè)表項(xiàng) 呼叫中心市場(chǎng)需求 網(wǎng)站文章發(fā)布 美圖手機(jī)

有時(shí)候讓了解放雙手,讓電腦來幫我們自動(dòng)發(fā)一些我們想要發(fā)的消息,挺省力的,比如說白天寫好了演講稿,晚上要在群里進(jìn)行文字演講,那么我們就可以用腳本來實(shí)現(xiàn)自動(dòng)復(fù)制、粘貼和發(fā)送文字的功能,從而解放我們自己,不用親自在電腦上反復(fù)干這個(gè)Ctrl C/Ctrl V這個(gè)累活兒。

還可以把定時(shí)多長(zhǎng)時(shí)間后發(fā)送指定內(nèi)容,這下子就不用坐在電腦前面到點(diǎn)了發(fā)彈幕了。

多長(zhǎng)時(shí)間發(fā)1條消息,又或者1秒發(fā)多少條信息,都可自由設(shè)置,時(shí)間設(shè)得短的話,一秒發(fā)幾十條都沒問題,只是太快了會(huì)形成刷屏的效果…

今天就把這個(gè)技巧給大家分享一下,很簡(jiǎn)單,沒有多少代碼。

一、效果

我們先來看一下效果,我這里設(shè)置的是4s后開始發(fā)送,間隔0.5s發(fā)一次。

用Python實(shí)現(xiàn)電腦自動(dòng)發(fā)消息,內(nèi)容自定義,快慢均可

二、開發(fā)環(huán)境

  • 系統(tǒng):Windows10 64位
  • Python版本:3.9
  • Pycharm版本:2021.1.3
  • 模塊(庫(kù)):os、time、pyautogui、pyperclip

三、關(guān)鍵步驟解析

實(shí)現(xiàn)的代碼文件主要有兩個(gè),目的分別是:獲取聊天窗口位置和實(shí)現(xiàn)自動(dòng)發(fā)送消息功能,用到的庫(kù)在上面已經(jīng)提過了,在開始寫代碼之前,先把要用的庫(kù)先pip下載裝好,下面就不再說這個(gè)了。

1.獲取聊天窗口位置(源碼1)

在我們發(fā)消息之前,得需要知道聊天窗口的位置在哪,即鼠標(biāo)停留在哪里才能定位到聊天窗口的輸入界面,也就是鼠標(biāo)的x和y坐標(biāo)是多少。

這里我用的是os、time和pyautogui這三個(gè)庫(kù),獲取鼠標(biāo)的實(shí)時(shí)位置的:

try:
    while True:
        print("Press Ctrl-C to end")
        x, y = pag.position()  # 返回鼠標(biāo)的坐標(biāo)
        posStr = "Position:" + str(x).rjust(4) + ',' + str(y).rjust(4)
        print(posStr)  # 打印坐標(biāo)
        time.sleep(0.2)
        os.system('cls')  # 清楚屏幕
except KeyboardInterrupt:
    print('end....')

只要程序運(yùn)行起來之后,每當(dāng)我們移動(dòng)鼠標(biāo),鼠標(biāo)的x和y值就會(huì)自動(dòng)發(fā)聲改變并打印出來,我們只需要把聊天窗口調(diào)出來,把鼠標(biāo)定位到聊天的窗口的輸入位置就能獲取到此時(shí)的x和y值,有了這個(gè)x和y值之后,我們才能告訴下面的發(fā)消息程序要在哪里進(jìn)行粘貼和推送。

當(dāng)然了,獲取鼠標(biāo)位置的方式有很多種,你們也可以去嘗試一下其他方式的獲取。

2.實(shí)現(xiàn)自動(dòng)發(fā)送消息功能

在獲取了x和y的值之后,我們要做的當(dāng)然是寫程序?qū)崿F(xiàn)“復(fù)制文本→粘貼文本→發(fā)送消息”,這里就需要用到 pyautogui 來控制鍵盤和鼠標(biāo),用 pyperclip 來控制電腦進(jìn)行復(fù)制和粘貼,以及用 time 這個(gè)庫(kù)進(jìn)行一下時(shí)間的控制。

首先我們把需要發(fā)送的內(nèi)容提前準(zhǔn)備好,放在content里面,到時(shí)候直接拿來用就可以了,內(nèi)容可以自定義修改,比如這樣的:

content = """   
呼叫龍叔!
第二遍!
第三遍!
第四遍!
第五遍!
"""

我們?cè)谶\(yùn)行代碼之后需要切換到聊天界面,中間需要時(shí)間去手動(dòng)做一下這個(gè)操作,所以在復(fù)制粘貼和發(fā)送代碼之前,我們需要留出一些時(shí)間給自己,我這里先設(shè)定了4s的時(shí)間延遲,當(dāng)然也可以設(shè)置幾個(gè)小時(shí)之后開始發(fā)消息。

time.sleep(4)

接下來就是怎么實(shí)現(xiàn)復(fù)制粘貼和發(fā)送了:

for line in list(content.split("\n"))*10:
    if line:
        pyautogui.click(669,687)  #鼠標(biāo)點(diǎn)擊并定位到聊天窗口
        pyperclip.copy(line)    #復(fù)制該行
        pyautogui.hotkey("ctrl","v") #粘貼,mac電腦則把ctrl換成command
        pyautogui.typewrite("\n")   #發(fā)送
        time.sleep(5) #每次發(fā)完間隔5s

到了這里,所有的東西就已經(jīng)完成了,如果覺得5s發(fā)送1條消息太快,可以修改time.sleep(5)里面的5這個(gè)數(shù)值,比如說10s發(fā)一條消息;如果你設(shè)置成0.01秒,那么就會(huì)是一個(gè)快速發(fā)消息的刷屏效果了…

for循環(huán)中的“*10”控制循環(huán)次數(shù),也就是讓它發(fā)10次文本的樣子,也可以設(shè)置不讓它循環(huán),把 list(content.split("\n"))*10 改成 content.split("\n") 即可。

大致的方法就是上面這些,需要源碼可以私聊我,你們也可以去嘗試別的方式實(shí)現(xiàn),說白了就是自動(dòng)發(fā)消息,實(shí)現(xiàn)方式有很多種,比如更高級(jí)一點(diǎn)的直接帶著xookie調(diào)api發(fā)送等等,以及按鍵精靈也是能實(shí)現(xiàn)這個(gè)功能,更多精彩,等你自己去挖掘了。

總結(jié)

這個(gè)腳本的本質(zhì)是實(shí)現(xiàn)電腦自動(dòng)發(fā)消息,只是間隔時(shí)間的設(shè)置導(dǎo)致它也具備快速發(fā)消息的功能,不僅僅是QQ,微信也是一樣能用。

基本的原理就是這樣了,你們還可以思考一下,如何在這個(gè)基礎(chǔ)上,讓程序在幾個(gè)小時(shí)之后啟動(dòng),間隔幾十分鐘發(fā)一次,徹底解放自己。

到此這篇關(guān)于Python實(shí)現(xiàn)自動(dòng)發(fā)消息自定義內(nèi)容功能的文章就介紹到這了,更多相關(guān)python自動(dòng)發(fā)消息內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python之qq自動(dòng)發(fā)消息的示例代碼
  • python操作微信自動(dòng)發(fā)消息的實(shí)現(xiàn)(微信聊天機(jī)器人)

標(biāo)簽:樂山 上海 河南 新疆 沈陽 紅河 滄州 長(zhǎng)治

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python實(shí)現(xiàn)自動(dòng)發(fā)消息自定義內(nèi)容的操作代碼》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    耒阳市| 宽甸| 汝阳县| 宁陕县| 泸水县| 噶尔县| 阿图什市| 手机| 云浮市| 靖边县| 贡嘎县| 昌都县| 钟祥市| 玛沁县| 汶上县| 卓资县| 福泉市| 遵化市| 霍山县| 鲁甸县| 宁强县| 凌海市| 湖北省| 吴旗县| 靖州| 广南县| 静宁县| 武山县| 蓬安县| 阆中市| 长葛市| 青冈县| 贺兰县| 咸阳市| 郑州市| 安吉县| 宣化县| 东方市| 策勒县| 静安区| 邵阳县|