如何使用python記錄室友的抖音在線時(shí)間
今天給大家分享一篇有趣的文章,靈感來自于前幾天與室友的聊天,他告訴我抖音可以實(shí)時(shí)顯示人的在線情況,如下圖:
只需要進(jìn)入抖音消息框,然后進(jìn)入用戶聊天窗口,就可以看到上述在線狀態(tài)了。
然后我靈機(jī)一動(dòng),是不是用python可以實(shí)時(shí)監(jiān)測一個(gè)人全天的在線情況?
說干就干,決定先拿我室友“開刀”
1.邏輯分析
俗話說,磨刀不誤砍柴工,做任何事之前,都要先把邏輯分析清楚,要不然只會(huì)事倍功半。
起初本來想用手機(jī)模擬器來操作,但是不幸的是手機(jī)模擬器不顯示在線狀態(tài),沒辦法,只能把自己的心愛的手機(jī)貢獻(xiàn)出來了。
首先用appium客戶端打開抖音(關(guān)于appium的安裝和使用,請參考之前的文章),配置如圖:
點(diǎn)擊start session:
點(diǎn)擊“消息”元素:
再點(diǎn)擊進(jìn)入聊天窗口:
顯示在線狀態(tài)元素的id為:
com.ss.android.ugc.aweme:id/blc
那么,我們只需要在當(dāng)前頁面一直請求獲取該元素的值就可以獲取該好友的在線狀態(tài)了,如果返回“在線”,則判該用戶在線;否則,判為不在線。
2.Python代碼擼起來
1.appium模塊操控打開抖音
desired_caps = { "platformName": "Android", "deviceName": "MHA_AL00", "appPackage": "com.ss.android.ugc.aweme", "appActivity": ".main.MainActivity", "noReset": "true", "fullReset": "false" } server = 'http://localhost:4723/wd/hub' driver = webdriver.Remote(server, desired_caps)
2.依次點(diǎn)擊進(jìn)入消息列表、用戶聊天窗
driver.find_element_by_xpath('//android.widget.TextView[contains(@text,"消息")]').click() time.sleep(1) driver.find_element_by_xpath('//android.widget.TextView[contains(@text,"女神的昵稱")]').click()
3.獲取在線狀態(tài)和時(shí)間并保存
while True: status=driver.find_element_by_id('com.ss.android.ugc.aweme:id/blc').text strtime = time.strftime("%H:%M:%S", time.localtime(time.time())) if status=='在線': status='在線' else: status='不在線' wb = xlrd.open_workbook('1.xls') tabsheet = wb.sheets()[0] k = tabsheet.nrows #表格已有的行數(shù) worksheet.write(k , 0, i['name']) # 酒店名字 worksheet.write(k , 1, i['addr']) # 酒店地址 time.sleep(60)
4.根據(jù)在線狀態(tài)畫出折線圖
df = pd.read_excel('1.xls', encoding='gbk', usecols=['時(shí)間', '狀態(tài)']) line = Line("折線圖") line.add("在線狀態(tài)", df['時(shí)間'], df['狀態(tài)'], xaxis_rotate=45) line.render('折線圖.html')
根據(jù)當(dāng)代“惡臭”青年的生活習(xí)慣,睡前醒后十有八九是在刷抖音,所以可以推斷出,室友今天是在9點(diǎn)20分左右醒的、23點(diǎn)左右睡的,看起來作息還是比較規(guī)律的。
總結(jié)
到此這篇關(guān)于如何使用python記錄室友的抖音在線時(shí)間的文章就介紹到這了,更多相關(guān)python記錄抖音在線時(shí)間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python中OpenCV實(shí)現(xiàn)簡單車牌字符切割
本文將結(jié)合實(shí)例代碼,在Jupyter Notebook上使用Python+opencv實(shí)現(xiàn)如下簡單車牌字符切割。感興趣的小伙伴可以參考一下2021-06-06django 2.0更新的10條注意事項(xiàng)總結(jié)
Django 是 Python Web 開發(fā)最常用的框架之一,跟進(jìn)它的最新變化絕對是必須的。下面這篇文章主要給大家介紹了關(guān)于django 2.0更新的10條注意事項(xiàng),文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。2018-01-01利用Python實(shí)現(xiàn)劉謙春晚魔術(shù)
劉謙在2024年春晚上的撕牌魔術(shù)的數(shù)學(xué)原理非常簡單,可以用Python完美復(fù)現(xiàn),文中通過代碼示例給大家介紹的非常詳細(xì),感興趣的同學(xué)可以自己動(dòng)手嘗試一下2024-02-02在python中,使用scatter繪制散點(diǎn)圖的實(shí)例
今天小編就為大家分享一篇在python中,使用scatter繪制散點(diǎn)圖的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07基于MTCNN/TensorFlow實(shí)現(xiàn)人臉檢測
這篇文章主要為大家詳細(xì)介紹了基于MTCNN/TensorFlow實(shí)現(xiàn)人臉檢測,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05Python一階馬爾科夫鏈生成隨機(jī)DNA序列實(shí)現(xiàn)示例
這篇文章主要為大家介紹了Python實(shí)現(xiàn)一階馬爾科夫鏈生成隨機(jī)DNA序列示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07Python實(shí)現(xiàn)打包成庫供別的模塊調(diào)用
這篇文章主要介紹了Python實(shí)現(xiàn)打包成庫供別的模塊調(diào)用,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07