如何使用python記錄室友的抖音在線時(shí)間
今天給大家分享一篇有趣的文章,靈感來(lái)自于前幾天與室友的聊天,他告訴我抖音可以實(shí)時(shí)顯示人的在線情況,如下圖:

只需要進(jìn)入抖音消息框,然后進(jìn)入用戶聊天窗口,就可以看到上述在線狀態(tài)了。
然后我靈機(jī)一動(dòng),是不是用python可以實(shí)時(shí)監(jiān)測(cè)一個(gè)人全天的在線情況?
說(shuō)干就干,決定先拿我室友“開刀”

1.邏輯分析
俗話說(shuō),磨刀不誤砍柴工,做任何事之前,都要先把邏輯分析清楚,要不然只會(huì)事倍功半。
起初本來(lái)想用手機(jī)模擬器來(lái)操作,但是不幸的是手機(jī)模擬器不顯示在線狀態(tài),沒(méi)辦法,只能把自己的心愛(ài)的手機(jī)貢獻(xiàn)出來(lái)了。
首先用appium客戶端打開抖音(關(guān)于appium的安裝和使用,請(qǐng)參考之前的文章),配置如圖:

點(diǎn)擊start session:

點(diǎn)擊“消息”元素:

再點(diǎn)擊進(jìn)入聊天窗口:

顯示在線狀態(tài)元素的id為:
com.ss.android.ugc.aweme:id/blc
那么,我們只需要在當(dāng)前頁(yè)面一直請(qǐng)求獲取該元素的值就可以獲取該好友的在線狀態(tài)了,如果返回“在線”,則判該用戶在線;否則,判為不在線。
2.Python代碼擼起來(lái)
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)左右睡的,看起來(lái)作息還是比較規(guī)律的。
總結(jié)
到此這篇關(guān)于如何使用python記錄室友的抖音在線時(shí)間的文章就介紹到這了,更多相關(guān)python記錄抖音在線時(shí)間內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python簡(jiǎn)單生成隨機(jī)數(shù)的方法示例
這篇文章主要介紹了Python簡(jiǎn)單生成隨機(jī)數(shù)的方法,結(jié)合實(shí)例形式分析了Python基于random模塊生成隨機(jī)數(shù)的相關(guān)操作技巧,需要的朋友可以參考下2018-03-03
Python實(shí)現(xiàn)簡(jiǎn)易版的Web服務(wù)器(推薦)
這篇文章主要介紹了Python實(shí)現(xiàn)簡(jiǎn)易Web服務(wù)器的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-01-01
Python利用pandas和matplotlib實(shí)現(xiàn)繪制圓環(huán)圖
在可視化的過(guò)程中,圓環(huán)圖是一種常用的方式,特別適合于展示各類別占比情況,本文將介紹如何使用 Python中的 pandas 和 matplotlib 庫(kù),來(lái)制作一個(gè)店鋪銷量占比的圓環(huán)圖,需要的可以參考下2023-11-11
Python利用Flask動(dòng)態(tài)生成漢字頭像
這篇文章主要為大家詳細(xì)介紹了Python如何利用Flask動(dòng)態(tài)生成一個(gè)漢字頭像,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下2023-01-01
Win10搭建Pyspark2.4.4+Pycharm開發(fā)環(huán)境的圖文教程(親測(cè))
本文主要介紹了Win10搭建Pyspark2.4.4+Pycharm開發(fā)環(huán)境的圖文教程(親測(cè)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
python?數(shù)據(jù)保存為npy和npz格式并讀取的完整代碼
這篇文章主要介紹了python?數(shù)據(jù)保存為npy和npz格式并讀取,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
Pandas中df.loc[]與df.iloc[]的用法與異同?
本文主要介紹了Pandas中df.loc[]與df.iloc[]的用法與異同,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧?2022-07-07
python通過(guò)字典dict判斷指定鍵值是否存在的方法
這篇文章主要介紹了python通過(guò)字典dict判斷指定鍵值是否存在的方法,實(shí)例分析了Python中使用has_key及in判斷指定鍵值是否存在的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-03-03
使用numpy對(duì)數(shù)組求平均時(shí)如何忽略nan值
這篇文章主要介紹了使用numpy對(duì)數(shù)組求平均時(shí)如何忽略nan值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-02-02

