Python能干啥( 三 )
一旦当前播放的视频识别出有颜值高的小姐姐,就需要模拟保存视频到本地的操作。
获取「分享」和「保存本地」两个按钮的坐标位置,依次利用 adb 执行点击操作即可下载视频到本地。def save_video_met(): """ :return: """ # 分享 os.system("adb shell input tap 1000 1500") time.sleep(0.05) # 保存到本地 os.system("adb shell input tap 350 1700")?另外,由于下载视频的过程是一个耗时操作,在下载进度对话框还未消失之前,需要做一个「模拟等待」的操作。def wait_for_download_finished(poco): """ 从点击下载,到下载完全 :return: """ element = Element() while True: # 由于是对话框,不能利用Element类来判断是否存在某个元素来准确处理 # element_result = element.findElementByName(\u0026#39;正在保存到本地\u0026#39;) # 当前页面UI树元素信息 # 注意:保存的时候可能会获取元素异常,这里需要抛出,并终止循环 # com.netease.open.libpoco.sdk.exceptions.NodeHasBeenRemovedException: Node was no longer alive when query attribute "visible". Please re-select. try: ui_tree_content = json.dumps(poco.agent.hierarchy.dump(), indent=4).encode(\u0026#39;utf-8\u0026#39;).decode(\u0026#39;unicode_escape\u0026#39;) except Exception as e: print(e) print(\u0026#39;异常,按下载处理~\u0026#39;) break if \u0026#39;正在保存到本地\u0026#39; in ui_tree_content: print(\u0026#39;还在下载中~\u0026#39;) time.sleep(0.5) continue else: print(\u0026#39;下载完成~\u0026#39;) break在视频保存到本地之后,就可以模拟向上滑动的操作,跳到播放「下一条视频」。
循环上面的操作,即可筛选出所有颜值高的小姐姐,并保存到本地。def play_next_video(): """ 下一个视频 从下往上滑动 :return: """ os.system("adb shell input swipe 540 1300 540 500 100")在脚本一条条刷视频的过程中,可能会遇到一下广告,我们需要对这类视频进行过滤。def is_a_ad(): """ 判断的当前页面上是否是一条广告 :return: """ element = Element() ad_tips = find_result = False for ad_tip in ad_tips: try: element_result = element.findElementByName(ad_tip) # 是一条广告,直接跳出 find_result = True break except Exception as e: find_result = False return find_result结 果 结 论运行上面的脚本,会自动打开抖音,对每一条小视频多次进行人脸识别,直到识别到颜值高的小姐姐,保存视频到本地,然后继续刷下一条短视频。
转载自:AirPython作者:星安果毕业季福利原价199元的Python课程
限时免费学习!没有任何套路,直接领取就可以!
任何疑问,教师团队随时解答。
虽然是免费课,但教师团队可没有缩水,依旧是前BAT高级专家配合顶级高校硕士进行教学。
推荐阅读
- 怎样成为一名合格的Python程序员?
- python 爬虫,咋获得输入验证码之后的搜索结果
- python的html5lib这个库咋使用啊我在网上也没有找到相关文档
- 作为软件工程大二的学生,学习一般,编程一般,毕业后能干些啥
- 零基础入门学习啥语言好
- Python3.4和3.5区别大么
- python 中 def_():...... return _有啥作用
- 新互联网网站用Java还靠谱么对比Php,Python,Ruby的话
- 30岁男,创业失败转行学python,是否很晚?也不好找工作?
- Python 的开发速度比 C#.net 或 Vb.net 更快吗?
