python爬虫——抖音数据 - 秋无之地

时间:2024-02-26 08:30:12

python爬虫——抖音数据

最近挺火的抖音短视频,不仅带火了一众主播,连不少做电商的也进驻其中,于是今天我来扒一扒这火的不要不要的抖音数据:

一、抓包工具获取用户ID

对于手机app数据,抓包是最直接也是最常见的手段,常用的抓包工具就有:charles、fiddler、wireshark、httpwatch等等,本文使用charles进行抓包。

charles抓包工具使用教程:charles使用教程

此时,手机已经连上电脑,并可以正常抓包。

1、打开手机抖音app,在搜索框输入目标用户(例如:棚棚朱古力):

2、选中想要的用户点击进去用户详情页:

3、抓包工具上找到对应的数据,并获取用户ID:

二、根据用户ID获取用户数据,分别有:总点赞数、用户显示ID、作品数、喜欢数、关注数、粉丝数等用户详细数据。

代码如下:

def get_love_num(shape_id):
    \'\'\'
    获取除置顶外前十视频的点赞数
    :param shape_id:
    :return:
    \'\'\'
    sign_ = "HunHKQABfpAtN81GL5ujHx7pvd"
    url = f"https://www.iesdouyin.com/web/api/v2/aweme/post/?sec_uid={shape_id}&count=100&max_cursor=0&aid=1128&_signature={sign_}"
    resp = requests.get(url)
    resp_result = resp.json()
    # print(resp_result)
    love_num_list = []
    awe_list = resp_result[\'aweme_list\']
    for awe_dict in awe_list[:10]:
        try:
            love_num = awe_dict[\'statistics\'][\'digg_count\']
        except:
            love_num = 0
        love_num_list.append(love_num)
    return love_num_list

运行结果:

三、下载不带水印的视频:

1、获取视频连接:

def get_love_num(shape_id):
    \'\'\'
    获取除置顶外前十视频的点赞数
    :param shape_id:
    :return:
    \'\'\'
    sign_ = "HunHQBAfpZtH8RGL3ujHf7pau"
    url = f"http://www.iesdouyin.com/web/api/v1/aweme/post/?sec_uid={shape_id}&count=6&max_cursor=0&aid=1128&_signature={sign_}"
    # print(url)
    resp = requests.get(url)
    resp_result = resp.json()
    love_num_list = []
    awe_list = resp_result[\'aweme_list\']
    for awe_dict in awe_list[:10]:
        try:
            love_num = awe_dict[\'statistics\'][\'digg_count\']
            video_desc = awe_dict[\'desc\']
            video_link = awe_dict[\'video\'][\'play_addr\'][\'url_list\'][0]
            download_video(video_desc,video_link)
        except:
            love_num = 0
            video_desc = ""
            video_link = ""
        love_num_list.append((love_num,video_desc,video_link))
    return love_num_list

def download_video(video_desc,video_link):
    \'\'\'
    下载视频
    :param video_desc: 
    :param video_link: 
    :return: 
    \'\'\'
    try:
        resp = requests.get(video_link)
        with open(f"./{video_desc}.mp4","w") as f:
            f.write(resp.text)
    except Exception as e:
        print(e)

 

2、下载视频保存到本地:

 

以上就是我的分享,如果有什么不足之处请指出,多交流,谢谢!

如果喜欢,请关注我的博客:https://home.cnblogs.com/u/qiuwuzhidi

想获取更多数据请点击抖音源数据或定制爬虫的请点击python爬虫专业定制