溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python自動化如何實現(xiàn)自動回復(fù)QQ消息

發(fā)布時間:2021-03-16 14:53:46 來源:億速云 閱讀:166 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹了python自動化如何實現(xiàn)自動回復(fù)QQ消息,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

1.需要安裝的相關(guān)軟件和python模塊

1.1 安裝client模塊
打開命令窗口,輸入命令:pip install appium-python-client

1.2 安裝Appium Server
下載網(wǎng)址為:appium
1.3 安裝JDK
安裝好之后,添加環(huán)境變量JAVA_HOME,指定jdk的安裝目錄,小編為:

python自動化如何實現(xiàn)自動回復(fù)QQ消息

python自動化如何實現(xiàn)自動回復(fù)QQ消息

1.4 安裝android sdk
添加一個環(huán)境變量ANDROID_HOME,設(shè)置值為sdk包的解壓目錄,小編為:

python自動化如何實現(xiàn)自動回復(fù)QQ消息

python自動化如何實現(xiàn)自動回復(fù)QQ消息

另外,最好在path里面添加adb.exe的環(huán)境變量

python自動化如何實現(xiàn)自動回復(fù)QQ消息

python自動化如何實現(xiàn)自動回復(fù)QQ消息

1.5 投屏軟件
小編用的是米卓同屏助手,下載網(wǎng)址為:米卓同屏助手

2. 連接手機

小編用的USB連接,需要一條數(shù)據(jù)線,將手機和電腦端連接起來,同時需要打開手機的開發(fā)者模式。
那么怎樣打開開發(fā)者模式,以小編的手機為例(OPPO手機)
來到手機設(shè)置,點擊關(guān)于手機,之后一直點擊版本號,當(dāng)出現(xiàn)以下字樣即可

python自動化如何實現(xiàn)自動回復(fù)QQ消息

然后進入其他設(shè)置(不同手機可能不同),就可以看到這里多了一個開發(fā)者選項了。

python自動化如何實現(xiàn)自動回復(fù)QQ消息

進入開發(fā)者選項,然后打開,可以發(fā)現(xiàn)這里有一個USB調(diào)試的開關(guān),打開它。

python自動化如何實現(xiàn)自動回復(fù)QQ消息

打開之后,就可以看到在這個投屏軟件上了出現(xiàn)了手機的畫面

python自動化如何實現(xiàn)自動回復(fù)QQ消息

3.測試是否連接成功

在命令窗口中輸入: adb devices -l ,如果出現(xiàn)以下這個畫面,應(yīng)該是成功連接了

python自動化如何實現(xiàn)自動回復(fù)QQ消息

有個時候,可能會報錯,一般原因是投屏軟件的adb.exe版本和sdk的adb.exe版本不一致導(dǎo)致的,(小編自己猜測的)應(yīng)該只需把其中任意一個adb.exe復(fù)制到另外那個那里就行了。

python自動化如何實現(xiàn)自動回復(fù)QQ消息

python自動化如何實現(xiàn)自動回復(fù)QQ消息

4.代碼實現(xiàn)

參考代碼如下:

from appium import webdriver
import time

desired_caps={
 'platformName':'Android',
 'platformVersion':'8.1',
 'deviceName':'xxx',
 'appPackage':'com.tencent.qqlite', # 自動化應(yīng)用
 'appActivity':'com.tencent.mobileqq.activity.SplashActivity',
 #'unicodeKeyboard':True,
 #'resetKeyboard':True,
 'noReset':True,
 'newCommandTimeout':6000,
 'automationName':'UiAutomator2'
}

driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)

driver.implicitly_wait(10)

driver2=driver.find_element_by_id('recent_chat_list')

list2=driver2.find_elements_by_class_name('android.widget.LinearLayout')
print('當(dāng)前QQ消息為%d個'%(len(list2)))

time.sleep(2)
list2[0].click()


def send_Message(text2:str): # 發(fā)消息
 driver4=driver.find_element_by_id('inputBar')
 driver4.find_element_by_id('input').send_keys(text2)
 driver4.find_element_by_id('fun_btn').click()
 time.sleep(2)
 print("發(fā)送消息:%s"%(text2))

list4=[
"劉邦,字季,沛郡豐邑(今江蘇省豐縣)人。中國歷史上杰出的政治家、戰(zhàn)略家和軍事指揮家,漢朝開國皇帝,漢民族和漢文化的偉大奠基者和開拓者,對漢族的發(fā)展以及中國的統(tǒng)一有突出貢獻。",
"還沒",
"湖南省,簡稱“湘”,是中華人民共和國省級行政區(qū),省會長沙,界于北緯24°38′~30°08′,東經(jīng)108°47′~114°15′之間,東臨江西,西接重慶、貴州,南毗廣東、廣西,北連湖北,總面積21.18萬平方千米。"
]

while True:
 try:
 driver3=driver.find_element_by_id('listView1')
 list3=driver3.find_elements_by_class_name('android.widget.RelativeLayout')
 text=list3[-1].find_element_by_id('chat_item_content_layout').text
 print('收到消息:%s'%(text)) # 接收消息

 time.sleep(5)
 if(text=='你好,請幫我查閱一下劉邦的簡介'):
  send_Message(list4[0])
 elif(text=="你吃中飯了沒"):
  send_Message(list4[1])
 elif(text=="介紹一下湖南唄!"):
  send_Message(list4[2])

 except Exception as e:
 pass

在運行代碼的過程當(dāng)中,會在手機上自動安裝一些東東,同意安裝即可。
運行結(jié)果:

運用python實現(xiàn)自動回復(fù)QQ消息

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“python自動化如何實現(xiàn)自動回復(fù)QQ消息”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI