Skip to main content

douyin

✨抖音爬虫

❤️开源不易,欢迎star⭐

📢声明

本项目初衷为学习python爬虫、命令行调用Aria2及python实现WebUI的案例,程序功能为获取抖音平台上公开的信息,仅用于测试和学习研究,禁止用于商业用途或任何非法用途。

任何用户直接或间接使用、传播本仓库内容时责任自负,本仓库的贡献者不对该等行为产生的任何后果负责。

如果相关方认为该项目的代码可能涉嫌侵犯其权利,请及时联系我删除相关代码。

使用本仓库的内容即表示您同意本免责声明的所有条款和条件。如果你不接受以上的免责声明,请立即停止使用本项目。


🏠项目地址

https://github.com/erma0/douyin

🍬功能

🎈获取抖音网页以下公开的数据信息:

  • 指定作品数据
  • 指定用户资料信息
  • 指定用户主页作品数据
  • 指定用户喜欢作品数据
  • 指定用户收藏作品数据
  • 指定音乐原声作品数据
  • 指定挑战话题作品数据
  • 指定合集作品数据
  • 指定用户关注列表数据
  • 指定用户粉丝列表数据
  • 指定关键词搜索作品数据
  • 指定关键词搜索用户数据
  • 指定关键词搜索直播数据
  • 指定作品评论数据
  • 指定作品评论回复数据

PS.

  • 支持输入文件路径批量操作(一行一个目标地址)
  • 支持增量采集指定用户主页作品
  • 部分作品封面不准确,原因不明

‍🚩待办

💡欢迎PR或建议

  • 完善程序 - 更新功能
  • GUI - Eel

🚀使用

📍测试环境:Win10 x64 + Python3.12。

📭功能未全部测试,有问题请提交issue(请提供测试链接以便复现问题)

🍪获取cookie

🟢注意: cookie是有过期时间的,有效cookie内容一般在60条左右。

  1. 打开抖音网页版的任意用户主页(推荐使用Chrome/Edge浏览器),例如https://v.douyin.com/iybvCom1/,再按F12打开开发者工具,然后切换到网络/Network标签页

  2. 在 过滤/筛选器 中输入v1/web/aweme/post,找到任一个post/?开头的JSON请求(没有请求就刷新一下)

  3. 在标头/Headers中往下滑,找到请求标头/Request Headers下面的Cookie,复制Cookie右边的值(可以双击直接全选),再保存到config/cookie.txt文件中。 示意图 PS. 可以使用-c edge/chrome命令自动获取本地edge/chrome浏览器中的cookie,不过取到的cookie不一定有效,且有效期很短,仅作为备选功能使用(实测chrome有效,Edge经常无效)。

⚠️ 据说用作品详情页中/aweme/v1/web/aweme/detail/接口请求带的cookie成功率较高,未测试。

🉑直接运行

下载dist目录中的douyin.exe,在程序所在目录打开命令行,输入对应命令,或者直接双击打开douyin.exe后根据提示输入目标链接即可。

⚠️ Linux或macOS请从官方地址下载对应的Aria2,然后自行修改源码调试运行

🐔命令行使用帮助

./douyin -h

🏀命令行使用例子(先在程序所在目录打开命令行)

  • 获取指定用户主页/音乐/话题/合集/作品等数据

    # 部分类型链接可以自动识别,其他需要使用-t指定类型 
    ./douyin -u https://*/
    ./douyin -t search -u https://*/
    
    # -t, --type 指定类型:
        'post':用户主页作品
        'like':用户喜欢作品
        'music':音乐原声作品
        'hashtag':话题作品
        'search':搜索作品
        'collection':合集作品
        'favorite':用户收藏作品
        'video':单个视频作品
        'note':单个图文作品
        'follow':用户关注列表
        'fans':用户粉丝列表
        'user':搜索用户
        'live':搜索直播(暂未实现)
    
  • 获取当前用户喜欢/收藏作品等数据

    ./douyin -t like
    
  • 其他功能

    # -l 限制数量,只需要前5条结果
    ./douyin -l 5 -u https://*/ 
    
    # 连续输入多个目标地址
    ./douyin -u https://*1/ -u https://*2/ 
    
    # 输入文件[user.txt]中的多个目标
    ./douyin -u ./user.txt
    
  • 💡 手动使用aria2c下载

    aria2c -c --console-log-level warn -i 生成的下载配置文件.txt
    

也可参考test_douyin.py文件中的代码使用

🔨编译

  1. 安装依赖

    pip install -r ./requirements.txt
    
  2. 安装pyinstaller

    pip install -U pyinstaller
    
  3. 打包EXE,图标可自行更换

    pyinstaller -F ./cli.py -i ./static/ico.ico -n douyin --add-data "lib:lib" --add-data "aria2c.exe:."
    
    # 或者使用配置文件
    pyinstaller ./douyin.spec
    

Star History

Star History Chart

Metadata

Release files for ereach-douyin-mcp-server 0.0.12

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ereach-douyin-mcp-server 0.0.12
File Size Uploaded
ereach_douyin_mcp_server-0.0.12.tar.gz 134.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ereach-douyin-mcp-server 0.0.12
File Interpreter ABI Platform
ereach_douyin_mcp_server-0.0.12-py3-none-any.whl Python 3 none any Details

Total release size: 275.4 kB

Release files / ereach_douyin_mcp_server-0.0.12.tar.gz

Download URL ereach_douyin_mcp_server-0.0.12.tar.gz
Size 134.5 kB
Tags Source
SHA-256 checksum
How to use checksums
861474d82208ad9cda4eb0a9b4ed5baa729ccfa12350ebf702025091e708e39e
BLAKE2b-256 checksum
How to use checksums
772f39573c573ed45e6dba0ae1be5d3e88a578d6628e4f2944a8c81bf4ea79e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / ereach_douyin_mcp_server-0.0.12-py3-none-any.whl

Download URL ereach_douyin_mcp_server-0.0.12-py3-none-any.whl
Size 140.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
42614a00120c7a04e8fc444db1dd9dbbb7602719926547476b5e993038c58e1c
BLAKE2b-256 checksum
How to use checksums
427a9e845a27dafdce5130768851d49372b558beb30e3783ace7c3255d777085
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release history Release notifications | RSS feed

This release

0.0.12 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page