这篇文章主要介绍了Python如何实现监测抖音在线时间,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
如下图:
只需要进入抖音消息框,然后进入用户聊天窗口,就可以看到上述在线状态了。
然后我灵机一动,是不是用python可以实时监测一个人全天的在线情况?
说干就干,决定先拿我室友“开刀”
1.逻辑分析
俗话说,磨刀不误砍柴工,做任何事之前,都要先把逻辑分析清楚,要不然只会事倍功半。
起初本来想用手机模拟器来操作,但是不幸的是手机模拟器不显示在线状态,没办法,只能把自己的心爱的手机贡献出来了。
首先用appium客户端打开抖音(关于appium的安装和使用,请参考之前的文章),配置如图:
点击“消息”元素:
再点击进入聊天窗口:
显示在线状态元素的id为:
com.ss.android.ugc.aweme:id/blc
那么,我们只需要在当前页面一直请求获取该元素的值就可以获取该好友的在线状态了,如果返回“在线”,则判该用户在线;否则,判为不在线。
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.依次点击进入消息列表、用户聊天窗
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.获取在线状态和时间并保存
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 #表格已有的行数 worksheet.write(k , 0, i['name']) # 酒店名字 worksheet.write(k , 1, i['addr']) # 酒店地址 time.sleep(60)
4.根据在线状态画出折线图
df = pd.read_excel('1.xls', encoding='gbk', usecols=['时间', '状态'])line = Line("折线图")line.add("在线状态", df['时间'], df['状态'], xaxis_rotate=45)line.render('折线图.html')
根据当代“恶臭”青年的生活习惯,睡前醒后十有八九是在刷抖音,所以可以推断出,室友今天是在9点20分左右醒的、23点左右睡的,看起来作息还是比较规律的。
感谢你能够认真阅读完这篇文章,希望小编分享的“Python如何实现监测抖音在线时间”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。