这篇文章主要介绍“android抖音数据采集的方法”,在日常操作中,相信很多人在android抖音数据采集的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”android 香港云主机抖音数据采集的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!本次用到的工具:移动端自动化工具Appium,夜神模拟器(也可以用真机代替),adb工具。开始进入数据采集的准备工作,在上一篇文章的基础上,搭建自动化环境,首先需要配置android-sdk,安装教程可参考如下链接,最后需要验证adb命令是否可用,在命令行窗口运行adb version,出现版本号信息,说明adb工具可用,android sdk下载及安装教程请参阅如下链接:配置好android-sdk后,就可以安装Appium了,下载地址如下,此处我们选择appium-desktop-setup-1.9.0.exe版本:下载好后基本是下一步安装,安装完成后启动应用,出现如下窗口证明安装成功:
点击 “Start Server V 1.9.0”启动服务,出现如下页面则证明启动成功,端口为4723:
打开之前配置好的模拟器,此时在命令行窗口运行adb devices,会出现连接的模拟器设备,证明运行环境准备完成
接下来是运行环境配置,点击appium的 Start Inspector Session
需要配置如下启动参数:
platformName:模拟器运行的平台,填入Android
platformVersion:查看模拟器的安卓版本,填入即可
deviceName:此处为运行adb devices命令得到的设备,当前模拟器为127.0.0.1:62001
appPackage和appActivity:抖音app的包名和启动方法名,可通过android-sdkbuild-tools29.0.2下面的aapt.exe工具获得
配置好后,点击Star Session,看到模拟器启动抖音app则证明环境配置无误。有了运行环境,接下来介绍下本次的需求,打开模拟器中安装的抖音app,首先下滑刷新视频,再进入用户主页,分别对主页数据,关注数据,粉丝数据,作品和喜欢页签进行采集。appium需要做的对应操作如下:
1.下滑刷新视频
2.左滑进入用户主页
3.点击关注按钮
4.开始下滑关注列表,直到出现“暂时没有更多了”
5.返回用户主页
6.点击粉丝按钮
7.开始下滑粉丝列表,直到出现“暂时没有更多了”
8.返回用户主页
9.点击作品页签
10.下滑作品视频列表,直到出现“暂时没有更多了”
11.点击喜欢页签
12.下滑喜欢视频列表,直到出现“暂时没有更多了”
13.返回视频页面,重复步骤1安装python的Appium客户端:准备撸代码。
1.启动app等待启动好了app之后,我们开始处理业务1,下滑刷新视频,此处调用自己封装的滑动方法:等待视频刷新出来后执行业务2,快速左滑进入用户主页:此处flick方法和swipe方法内部是一样的,appium提供了两个滑动方法,swipe为普通滑动,通过给定坐标进行滑动,flick为快速滑动,通过给定坐标滑动之后开始做均减速滑动直到停止,滑动速度较快。
进入用户主页之后,我们需要判断按钮的id,标签位置等参数来进行点击,接下来主要介绍如何获取【关注】的标签位置:
使用appium启动app后,手动滑动进入用户主页,此时刷新appium页面中间的刷新按钮,点击左边的【关注】,此时可以看到中间列出的xml结构,以及右侧的按钮基本信息,通过这些信息,可以得到一个关注按钮的Xpath:
再对这个按钮进行点击即可进入关注页面,开始循环下滑到底即可:完成下滑后,需要用同样的方法获取到返回上一层按钮的xpath:然后点击返回上一层回到用户主页:
tips:
1.获取xpath不要使用绝对路径,经过大量测试,绝对路径在不同环境下是不一样的,使用相对路径则比较稳定
2.可以使用一些页面文字元素,id进行相对定位,再取到最终需要的元素
3.不要使用resource-id进行定位,经过大量测试,这个id不是唯一的,只能定位到第一个
4.也可以使用android-sdktools下面的uiautomatorviewer工具进行xpath定位,不过需要升级uiautomatorviewer,经过大量测试,对于抖音app的一些高版本,uiautomatorviewer无法获取其xpath。
通过同样的方法,分别点击【关注】【粉丝】【作品】【喜欢】,即可进行一个完整的操作,在使用上一次讲到的mitmproxy进行代理,将所有的数据进行解析入库,便可将所有的数据采集到自己的数据库中,或者将视频下载到本地硬盘。以上方法,经过大量的测试,每天采集的数据非常有限,问题如下:
1.一台模拟器,滑动速度有限
2.数据解析效率不高
针对以上两点问题,后来又加入了新方案,支持了模拟器的横向扩展(需要电脑硬件条件达标),以及数据的分布式解析,批量入库。
新方案完成后,两天的测试,使用了两台模拟器滑动采集,第一天10小时,采集了53万数据,而第二天,做了性能测试,10小时数据量竟然达到了111.6万,在测试过程中,感觉数据解析一直没有达到饱和,预测可以拖4台模拟器,只是我的电脑硬件配置没那么高,跑不了4台模拟器,所以就没有进行极限测试。
如下为两台模拟器滑动过程截图,以及每天采集数据量的一个统计图:
到此,关于“android抖音数据采集的方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注开发云网站,小编会继续努力为大家带来更多实用的文章!
这篇文章将为大家详细讲解有关电脑中怎么选择固态硬盘和机械硬盘,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、机械硬盘(HDD)即传统型普通硬盘,主要由:盘片、磁头、盘片转轴及控制电机、磁头控制器、数据转换器、接口、缓存等几…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。