学制作抖音短视频怎么翻页,抖音API接口python爬取抖音短视频详细教程(附带源码),抖音直播间数据抓取

抖音API接口python爬取抖音短视频详细教程(附带源码),抖音直播间数据抓取1. 环境的准备

夜神模拟器(Android 5.1.1) filder mitmproxy python3.7.3 jdk1.8.0_251 Android Studio(Android SDK 5.1) xposed(Android 5.1) JustTrustMe 这里先说明一下,抖音有ssl验证,夜神模拟器安装xposed和JustTrustMe之后,才能正常抓包,不然打开抖音是没有网的。 ​

短视频直播数据采集接口SDK请点击查看接口文档

2. 环境配置

除了python3.7.3和mitmproxy,其余的资源都在百度网盘中,自取,地址:pan.baidu.com/s/1ZtvZIQvQ8A6rp02HtAOudQ,提取码:4mu1。 ​

2.1 filder配置 安装好filder后,打开filder,左上角Tools -> Options,设置如下: ​

抖音短视频教如何抖屏_学制作抖音短视频怎么翻页_抖音短视频怎么玩

抖音短视频怎么玩_抖音短视频教如何抖屏_学制作抖音短视频怎么翻页

点击Actions,选择Trust Root Certificate,然后全部选是,安装window端的证书 ​

抖音短视频教如何抖屏_抖音短视频怎么玩_学制作抖音短视频怎么翻页

到这一步filder,PC端的算是配好了,然后关闭域防火墙,获取PC端的ip地址,方法如下: ​

学制作抖音短视频怎么翻页_抖音短视频怎么玩_抖音短视频教如何抖屏

然后打开夜神模拟器,进入wifi,配置代理: ​

学制作抖音短视频怎么翻页_抖音短视频教如何抖屏_抖音短视频怎么玩

然后打开网页进入192.168.1.19:8888,下载证书, ​

抖音短视频怎么玩_抖音短视频教如何抖屏_学制作抖音短视频怎么翻页

下载完成了,进入设置 -> 安全 -> 从SD卡安装,安装刚刚下载的证书,随便取名, ​

抖音短视频教如何抖屏_学制作抖音短视频怎么翻页_抖音短视频怎么玩

到处,filder就可以抓到夜神模拟器上的数据包了,而要抓抖音的包得安装xposed和JustTrustMe。 ​

2.2 xposed和JustTrustMe的配置 在网盘中下好xposed和JustTrustMe的apk文件后,直接点夜神右侧的安装APK,找到这两个框架的apk文件,点击安装,这里有个先后顺序,先安装xposed,安装后夜神桌面有一个xposed install,打开,然后下载xposed, ​

抖音短视频怎么玩_抖音短视频教如何抖屏_学制作抖音短视频怎么翻页

下载后会显示Xposed框架89版已激活,然后安装JustTrustMe的apk,安装好后,在xposed install里面勾选JustTrustMe, ​

抖音短视频怎么玩_抖音短视频教如何抖屏_学制作抖音短视频怎么翻页

到这里就安装完成了,然后下载最新版的抖音,就可以用filder抓包了: ​

抖音短视频怎么玩_抖音短视频教如何抖屏_学制作抖音短视频怎么翻页

记下这个url的前半部分,等会有用的。 ​

2.3 mitmproxy配置 首先,在PC端通过pip install mitmproxy安装mitmproxy模块,安装好后,继续通过cmd,输入mitmproxy,这样就会在系统盘的用户目录下的.mitmproxy文件夹下生成许多证书,点击mitmproxy-ca-cert.p12,选本地计算机,直接点下一步,设置密码的位置不用填,直接下一步,证书照下图放: ​

抖音短视频怎么玩_抖音短视频教如何抖屏_学制作抖音短视频怎么翻页

这样PC端的证书就配好了,然后配夜神的学制作抖音短视频怎么翻页,将mitmproxy-ca-cert.pem直接拖到夜神模拟器中,还是按照上面安装filder夜神模拟器端的证书方法操作,安装证书,然后创建douyin_fans.py文件: ​

import json


def response(flow):
    if 'api3-normal-c-hl.amemv.com/aweme/v1/user/follower/list' in flow.request.url:
        for user in json.loads(flow.response.text)['followers']:
            user_info = dict()
            user_info['nickname'] = user['nickname']
            user_info['share_id'] = user['uid']
            user_info['douyin_id'] = user['short_id']
            user_info['sec_uid'] = user['sec_uid']
            if user_info['douyin_id'] == '0':
                user_info['douyin_id'] = user['unique_id']
                user_info['update_time'] = user['unique_id_modify_time']
            print(user_info)

然后配置夜神的wifi的代理,同样的8888端口和ip,关掉域防火墙,然后在douyin_fans.py文件目录打开命令行输入mitmdump -p 8888 -s douyin_fans.py,然后打开夜神上的抖音进入到粉丝里面,就可以看到命令行有输出了,如下图: ​

抖音短视频怎么玩_学制作抖音短视频怎么翻页_抖音短视频教如何抖屏

到此处,mitmproxy已经配置好了,而且可以抓到粉丝了,但是需要手动滑粉丝列表才能进行翻页,这里就需要使用Appium进行自动滑动粉丝列表了。 ​

2.4 配置Android Studio 这里先解释一下为什么要下载Android Studio,主要是夜神模拟器是Android系统,而用Appium控制Android系统就需要Android的SDK,而现在的Android SDK与Android Studio是绑定的,安装好Android Studio后,按下图操作: ​

抖音短视频怎么玩_学制作抖音短视频怎么翻页_抖音短视频教如何抖屏

进入SDK Manager,安装Android5.1,并记住skd所在的路径: ​

学制作抖音短视频怎么翻页_抖音短视频教如何抖屏_抖音短视频怎么玩

安装好SDK后,进入对应的路径,然后打开系统的环境变量配置ANDROID_HOME以及一些path: ​

抖音短视频教如何抖屏_抖音短视频怎么玩_学制作抖音短视频怎么翻页

然后将platform-tools下的adb.exe文件放到夜神模拟器的bin目录中,与nox_adb.exe文件替换,并改为相同的名称nox_adb.exe,到此Android SDK的环境全部配完。 ​

JDK的配置 安装好jdk后,在系统变量中配置JAVA_HOME,以及在path中添加jdk的bin路径,jdk的环境就配好了。 ​

配置Appium 安装好Appium后直接打开,启动服务: ​

抖音短视频怎么玩_抖音短视频教如何抖屏_学制作抖音短视频怎么翻页

platformName:平台名称,一般是Android或iOS. ​

deviceName:设备名称,手机的具体类型 ​

appPackage:App程序包名 ​

appActivity:入口Activity名,通常以.开头 ​

adb shell ​

dumpsys window |grep mCurrentFocus ​

抖音短视频教如何抖屏_抖音短视频怎么玩_学制作抖音短视频怎么翻页

然后点击放大镜,然后按图配置如下参数: ​

抖音短视频怎么玩_学制作抖音短视频怎么翻页_抖音短视频教如何抖屏

然后save,然后start session,这样夜神就会自动打开抖音,到此所有环境配置完毕,下面开始页面元素定位以及爬取的相关工作。 ​

3. 定位页面元素

打开cmd输入monitor,等会就会出现一个界面,然后打开夜神的抖音,进行如下操作: ​

抖音短视频怎么玩_抖音短视频教如何抖屏_学制作抖音短视频怎么翻页

从左到右依次操作,这样就可以得到页面元素放大镜的id,后面的账号搜索点击元素都用同样的方法一步一步的得到所有元素的id值,编写douyin_appium.py文件: ​

from appium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
import time


option = {
    "platformName": "Android",
    "platformVersion": "Andriod5.1.1",
    "deviceName": "127.0.0.1:62001",
    "appPackage": "com.ss.android.ugc.aweme",
    "appActivity": "com.ss.android.ugc.aweme.main.MainActivity",
    "noReset": True,
    "unicodekeyboard": True,
    "resetkeyboard": True,
    "automationName": "UiAutomator1"
}

driver = webdriver.Remote('http://localhost:4723/wd/hub', option)

try:
    if WebDriverWait(driver, 5).until(lambda x: x.find_element_by_id('com.ss.android.ugc.aweme:id/c63')):
        driver.find_element_by_id('com.ss.android.ugc.aweme:id/c63').click()
except:
    pass

def get_size():
    x = driver.get_window_size()['width']
    y = driver.get_window_size()['height']
    return (x, y)

try:
    if WebDriverWait(driver, 3).until(lambda x:x.find_element_by_id('com.ss.android.ugc.aweme:id/ai4')):
        driver.find_element_by_id('com.ss.android.ugc.aweme:id/ai4').click()
        driver.find_element_by_id('com.ss.android.ugc.aweme:id/ai4').send_keys('lv123052')
        if WebDriverWait(driver, 3).until(lambda x: x.find_element_by_id('com.ss.android.ugc.aweme:id/ghv')):
            driver.find_element_by_id('com.ss.android.ugc.aweme:id/ghv').click()
    if WebDriverWait(driver, 2).until(lambda x: x.find_element_by_id('android:id/text1')):
        driver.find_element_by_id('android:id/text1').click()
        driver.find_element_by_id('com.ss.android.ugc.aweme:id/ckr').click()
except:
    pass

try:
    if WebDriverWait(driver, 5).until(lambda x:x.find_element_by_id('com.ss.android.ugc.aweme:id/bce')):
        driver.find_element_by_id('com.ss.android.ugc.aweme:id/bce').click()
        time.sleep(2)
except:
    pass

size = get_size()
x1 = int(size[0]*0.5)
x2 = int(size[0]*0.7)
y1 = int(size[1]*0.9)
y2 = int(size[1]*0.2)

while(True):
    time.sleep(0.5)
    driver.swipe(x1, y1, x2, y2)

4. 运行项目

夜神的代理打开,域防火墙关掉,然后用mitmdump命令运行douyin_fans.py文件,这里得说明一下,mongdb数据库的操作在douyin_fans.py文件中自行添加,然后直接run,douyin_appium.py文件,这样就会自行爬取抖音的某账号粉丝信息,效果如图: ​

学制作抖音短视频怎么翻页_抖音短视频怎么玩_抖音短视频教如何抖屏

出于用户隐私保密,这里就将相关id打马赛克了,到此整个项目全部结束,如果您觉得不错的给个赞谢谢,创作不易呀。

blog.csdn.net/weixin_42223833/article/details/110009432

免责申明:此内容仅供学习交流使用学制作抖音短视频怎么翻页,若侵犯贵方权益,请联系作者删除