前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TikTok数据采集技巧,轻松get!

TikTok数据采集技巧,轻松get!

作者头像
梦无矶小仔
发布2024-03-13 16:46:46
4410
发布2024-03-13 16:46:46
举报
文章被收录于专栏:梦无矶的测试开发之路

热身 - 用python写一个自动刷Tiktok的代码

用Python进行自动上下滑动手机屏幕通常涉及到用ADB(Android Debug Bridge)命令或Appium、Airtest这样的自动化工具。Android的话使用uiautomator2也是一个很不错的选择。

使用adb

代码语言:javascript
复制
import subprocess

def swipe_with_adb(start_x, start_y, end_x, end_y, duration=200):
    subprocess.run(f"adb shell input swipe {start_x} {start_y} {end_x} {end_y} {duration}", shell=True)

# 向上滑动
swipe_with_adb(300, 1000, 300, 500)

# 向下滑动
swipe_with_adb(300, 500, 300, 1000)

这个坐标可以通过配置文件读取,这样之后只需要修改配置文件就可以了,配置文件可以使用yaml或者config.ini格式。

如果你连接了多台设备,需要通过 ADB 指定设备进行滑动,你可以使用以下命令:

代码语言:javascript
复制
adb -s <设备序列号> shell input swipe x1 y1 x2 y2

这里 <设备序列号> 是你要操作的设备的序列号,可以通过 adb devices 命令来获取。x1 y1 x2 y2 是起始点和结束点的坐标。

以下是一个例子:

代码语言:javascript
复制
adb -s HT68B1A04448 shell input swipe 500 1000 500 500

这个命令会让编号为 HT68B1A04448 的设备从坐标 (500,1000) 滑动到 (500,500)。

使用Airtest

先要安装Airtest库,pip install airtest

代码语言:javascript
复制
from airtest.core.api import *

connect_device('Android:///')
devices == "HT68B1A04448"
connect_device("Android:///" + devices)
def swipe_with_airtest(direction='up'):
    if direction == 'up':
        swipe((300, 1000), (300, 500))
    else:
        swipe((300, 500), (300, 1000))

# 向上滑动
swipe_with_airtest('up')

# 向下滑动
swipe_with_airtest('down')

设备devices序列号通过adb devices命令获取

使用uiautomator2

先要安装uiautomator2库,pip install uiautomator2

代码语言:javascript
复制
import uiautomator2 as u2

def swipe_with_uiautomator2(direction='up'):
    # 连接到设备
    # 指定设备的IP地址或者序列号,如果只连了一台设备则不用写序列号
 d = u2.connect_adb("HT68B1A04448")

    if direction == 'up':
        d.swipe(300, 1000, 300, 500)
    else:
        d.swipe(300, 500, 300, 1000)

# 向上滑动
swipe_with_uiautomator2('up')

# 向下滑动
swipe_with_uiautomator2('down')

如果遇到配置相关问题,可以翻看我以前写的uiautomator2系列文章。

以上方法都需要你自己先点开Tiktok。

知识拓展- adb常用命令

当使用 ADB(Android Debug Bridge)时,有许多命令可用于执行各种操作。以下是一些常用的 ADB 命令及其功能:

  1. 「设备连接与识别」
    • adb devices:列出已连接的设备。
    • adb connect :通过网络连接到设备。
    • adb disconnect :断开与网络设备的连接。
  2. 「应用管理」
    • adb install <应用文件.apk>:将应用安装到设备。
    • adb uninstall <应用包名>:从设备卸载应用。
    • adb shell pm list packages:列出设备上已安装的包。
  3. 「文件传输」
    • adb push <本地文件路径> <设备路径>:从计算机推送文件到设备。
    • adb pull <设备路径> <本地文件路径>:从设备拉取文件到计算机。
  4. 「屏幕操作」
    • adb shell input tap x y:在设备屏幕上模拟点击操作。
    • adb shell input swipe x1 y1 x2 y2:在设备屏幕上模拟滑动操作。
    • adb shell am start -a android.intent.action.VIEW -d :打开指定的网址。
  5. 「屏幕截图与录制」
    • adb shell screencap <文件路径>:对设备进行屏幕截图,并保存到指定文件。
    • adb shell screenrecord <文件路径>:在设备上录制屏幕视频,并保存到指定文件。
  6. 「日志与调试」
    • adb logcat:获取设备日志信息。
    • adb bugreport <文件路径>:生成设备的 bug 报告信息并保存到指定文件。
  7. 「设备状态」
    • adb reboot:重新启动设备。
    • adb shell dumpsys battery:显示设备电池信息。

更多的adb命令可以后台留言,我以后出一个更全的版本哦。

正题 - TikTok数据爬取

我打开了万能的ChatGPT4,我叫它给我整一个,结果,它非常狂啊。

它就是不给,我略施小计,使用各种promot诱导它,最后虽然给出来了一些爬取的方法,但是,限制还是很大,而且需要根据一些场景进行代码修改。对于代码小白来说不友好。

有没有什么方法可以快速获取呢?就像B站、公众号、抖音、小红书、快手等自媒体排行榜可以使用某个平台一样可以直接看到呢?

这些都只是搜集国内的数据,而tiktok是国外的数据,我们如何获取?

这里要使用到的就是我们老伙伴了,亮数据!启动!

Tiktok个人资料数据集(公共网络数据)

文末有注册方法,点击阅读原文也可以进行注册,最好用电脑哦。

登录成功后,点击查看数据产品 -> 数据集商城 -> 搜索Tiktok

看到没,这惊人的数据量!点击查看数据集。

点击左侧的Over 1M followers查看Tik Tok超过一百万粉丝的有哪些,我们可以看到如下数据,可以下载样本数据。

「Over 1M followers」

这个专门的子集专注于拥有超过 100 万粉丝的 TikTok 个人资料,提供对平台上知名影响者的深入洞察。它包含关键细节,例如影响者姓名、引人入胜的传记、参与率、经过验证的状态、签名内容片段和关键受众人口统计数据。此外,它还包括高清个人资料图片和精选表现最好的视频等媒体资产。

「Over 1M videos」

TikTok 个人资料数据集中的这个专业子集突出显示了已将 1,000 多个视频上传到该平台的用户。它包括基本的详细信息,例如用户的昵称、关注者数量、参与度指标(喜欢、评论)、视频统计信息和唯一标识符(ID、URL、短 ID)。这个精心策划的系列对于旨在探索和了解多产 TikTok 用户的内容创作模式、促进趋势分析和潜在合作机会的个人和企业来说非常宝贵。

我们可以在下载好的表格里面,对他们的粉丝数、视频数、点赞数、评论等各项信息进行排序、筛选。

部分筛选展示。

除此之外,如果你想要自定义筛选也是可以的。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-03-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 梦无矶的测试开发之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 热身 - 用python写一个自动刷Tiktok的代码
    • 使用adb
      • 使用Airtest
        • 使用uiautomator2
        • 知识拓展- adb常用命令
        • 正题 - TikTok数据爬取
          • Tiktok个人资料数据集(公共网络数据)
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档