README.md

October 12, 2025 · View on GitHub

Logo

Downloads PyPI version Dev Branch Discord codecov TikHub APACHE-2.0

简体中文 readmeEnglish readme

F2 是一个 Python 库,提供多平台的作品下载与接口数据处理。支持 DouYinTikTokTwitterWeiBo 等平台,且方便适配更多平台。

🚀 快速入门

⚙️ 安装

⚡ 快速使用

📋 配置文件

💻 命令行

📚 进阶用法

🧐 FAQ

👏 团队

📘 开发指南

📝 API示例

🧩 开发者接口

🖥️ 命令行指引

✨ 新变化

当下载或升级到 F2 的不同版本时,请注意以下关键的版本更新。

🛠️ v0.0.1.7-pw2
  • 🚀 新增 Bark 应用支持 请前往 App Store 下载 Bark,并在 F2 配置文件 中完成相关配置。
  • 🛡️ 开放 ab 算法 已开源满血版 ab 算法,支持自定义 UA。请确保自定义 UA 符合规范。
  • 📡 新增直播弹幕转发功能 支持 douyintiktok 直播弹幕转发,请根据 WSS 配置指南 完成相应参数配置。
  • 🔔 启用通知推送 如需启用应用通知推送,请在 F2 配置文件 中设置 enable_bark 参数为 true
  • 📄 更多变更详情 请查看完整的 ChangeLog
📌 v0.0.1.6-pw2
  • 🛠️ 配置文件格式已更新 如果你使用旧版配置文件,请注意进行迁移。
  • 🌍 时区标准化 所有时间戳的默认时区已设置为 UTC/GMT+08:00
  • 📁 文件格式调整
    • douyin 直播流文件名调整为 flv
    • 图集格式调整回 webp
  • 🔄 错误修复 修复了 tiktok 视频地址 403 错误。 👉 了解更多解决方案
  • 🛡️ 算法优化 douyin 现在默认使用 ab 算法进行请求。(满血版 ab 算法即将开源)
  • 📄 更多变更详情 👉 查看 ChangeLog
📡 v0.0.1.5-pw2
  • 🛡️ 自定义 UA 支持 XBogus 参数现在支持自定义 UA,请确保 UA 符合规范。
  • 📊 数据库重建 重建后的数据库包含接口的原始数据。 👉 如需保留旧记录,请注意迁移或备份。
  • 🔄 返回类型统一 所有 fetch 方法的返回类型已统一为过滤器类型,请注意相关变化。
  • 🛠️ 新功能 添加了 _to_raw 方法,可将过滤器转换为原始接口数据。
  • 📝 文件名模板更新 如果文件名不符合新规范,将抛出异常,请检查并调整。
  • 🔗 链接解析修复 修复了 douyin 合集页链接无法解析的问题。 👉 了解更多
  • 📄 更多变更详情 👉 查看 ChangeLog

📑 文档

F2 的目标是提供一个简单易用的接口,让用户可以快速获取作品数据。 在 preview 版本中很多功能没有完善,如果你发现了问题,请在 F2 项目中提交 issue项目文档 还在完善中,存在滞后的情况,请保持关注。

🗓️ Todo

  • 将在 0.0.1.8 版本中添加 BiliBili & NetEaseMusic 支持。
  • 将在 0.0.1.8 版本中维护更多的 APICLI 功能。
  • 优化 F2CLI 体验。
  • 添加 Socket 代理支持。
  • 添加 Cookie 池,Proxy 池,User-Agent 池等支持。
  • 添加 F2WebAPI 版本。
  • 更多计划

🐛 更新

ChangeLog

💡 应用&功能

功能状态:🟢代表已经实现,🟡代表正在实现,🟤代表暂时不实现,🔵代表未来实现,🔴代表将会弃用。 账号状态:⚪代表未知,🟣代表需要登录(无视自己账号隐私设置),⚫代表不需要登录(游客状态能看到的)。

完整的功能列表请查看 API文档

📠 Bark
功能账号状态接口功能状态
发送通知(GET)fetch_bark_notification🟢
发送通知(POST)post_bark_notification🟢
发送加密通知cipher_bark_notification🟢
工具类类名接口功能状态
管理客户端配置ClientConfManager-🟢
生成随机数字字节-generate_numeric_bytes🟢
📸 DouYin
  • 🟣 表示需要登录才可以下载仅自己可见的作品、收藏作品、收藏夹作品或点赞作品等。(登录后无视自己的私密设置、可获取个性化内容)
  • ⚫ 表示不需要登录下载公开的作品、收藏夹作品、点赞作品等。(仅下载他人公开可见作品与页面)
功能账号状态接口功能状态
用户信息🟣⚫fetch_user_profile🟢
单个作品(视频、图集、日常)🟣⚫fetch_one_video🟢
live图集🟣⚫fetch_one_video🟢
主页作品🟣⚫fetch_user_post_videos🟢
点赞作品🟣⚫fetch_user_like_videos🟢
收藏夹作品🟣⚫fetch_user_collects_videos🟢
收藏作品🟣fetch_user_collection_videos🟢
收藏原声🟣fetch_user_music_collection🟢
收藏合集🟣fetch_user_mix_collection🔵
收藏短剧🟣fetch_user_series_collection🟤
合集作品fetch_user_mix_videos🟢
首页推荐作品🟣⚫fetch_user_feed_videos🟢
相似推荐作品fetch_related_videos🟢
直播间信息(流下载)fetch_user_live_videosfetch_user_live_videos_by_room_id🟢
直播间弹幕负载fetch_live_im🟢
直播间弹幕fetch_live_danmaku🟢
查询用户基本信息🟣⚫fetch_query_user🟢
关注用户开播🟣⚫fetch_user_following_lives🟢
关注用户信息🟣⚫fetch_user_following🟢
粉丝用户信息🟣⚫fetch_user_follower🟢
关注用户作品🟣⚫fetch_user_following_videos🟤
粉丝用户作品🟣⚫fetch_user_follower_videos🟤
朋友作品🟣fetch_friend_feed_videos🟢
增加播放量🟣⚫fetch_post_stats🟢
搜索视频fetch_search_videos🔵
搜索用户fetch_search_users🔵
搜索直播fetch_search_lives🔵
猜你想搜(相关搜索)fetch_search_suggest🟤
抖音热点fetch_hot_search🟤
作品评论🟣⚫fetch_video_comments🔵
观看历史🟣fetch_user_history_read🟤
稍后再看🟣fetch_user_watch_later🟤
............
工具类类名接口功能状态
管理客户端配置ClientConfManager🟢
生成真实msTokenTokenManagergen_real_msToken🟢
生成虚假msTokenTokenManagergen_false_msToken🟢
生成ttwidTokenManagergen_ttwid🟢
生成webidTokenManagergen_webid🟢
生成verify_fpVerifyFpManagergen_verify_fp🟢
生成s_v_web_idVerifyFpManagergen_s_v_web_id🟢
生成直播signatureDouyinWebcastSignatureget_signature🟢
使用接口地址生成Xb参数XBogusManagerstr_2_endpoint🟢
使用接口模型生成Xb参数XBogusManagermodel_2_endpoint🟢
使用接口地址生成Ab参数ABogusManagerstr_2_endpoint🟢
使用接口模型生成Ab参数ABogusManagermodel_2_endpoint🟢
提取单个用户idSecUserIdFetcherget_sec_user_id🟢
提取列表用户idSecUserIdFetcherget_all_sec_user_id🟢
提取单个作品idAwemeIdFetcherget_aweme_id🟢
提取列表作品idAwemeIdFetcherget_all_aweme_id🟢
提取单个合集idMixIdFetcherget_mix_id🟢
提取列表合集idMixIdFetcherget_all_mix_id🟢
提取单个直播间号WebCastIdFetcherget_webcast_id🟢
提取列表直播间号WebCastIdFetcherget_all_webcast_id🟢
全局格式化文件名-format_file_name🟢
创建用户目录-create_user_folder🟢
重命名用户目录-rename_user_folder🟢
创建或重命名用户目录-create_or_rename_user_folder🟢
json歌词转lrc歌词-json_2_lrc🟢
🎶 TikTok
  • 🟣 表示需要登录才可以下载仅自己可见的作品、收藏作品、收藏夹作品或点赞作品等。(登录后无视自己的私密设置、可获取个性化内容)
  • ⚫ 表示不需要登录下载公开的作品、收藏夹作品、点赞作品等。(仅下载他人公开可见作品与页面)
功能账号状态接口功能状态
用户信息🟣⚫fetch_user_profile🟢
单个作品🟣⚫fetch_one_video🟢
主页作品🟣⚫fetch_user_post_videos🟢
点赞作品🟣⚫fetch_user_like_videos🟢
收藏作品🟣⚫fetch_user_collect_videos🟢
播放列表🟣⚫fetch_play_list🟢
播放列表作品🟣⚫fetch_user_mix_videos🟢
作品搜索🟣⚫fetch_search_videos🟢
直播间信息(流下载)fetch_user_live_videos🟢
直播间弹幕负载fetch_live_im🟢
直播间弹幕fetch_live_danmaku🟢
检查开播🟣⚫fetch_check_live_alive🟢
............
工具类类名接口功能状态
管理客户端配置ClientConfManager🟢
生成真实msTokenTokenManagergen_real_msToken🟢
生成虚假msTokenTokenManagergen_false_msToken🟢
生成ttwidTokenManagergen_ttwid🟢
生成odin_ttTokenManagergen_odin_tt🟢
使用接口地址生成Xb参数XBogusManagerstr_2_endpoint🟢
使用接口模型生成Xb参数XBogusManagermodel_2_endpoint🟢
提取单个用户idSecUserIdFetcherget_secuid🟢
提取列表用户idSecUserIdFetcherget_all_secuid🟢
提取单个用户唯一idSecUserIdFetcherget_uniqueid🟢
提取列表用户唯一idSecUserIdFetcherget_all_uniqueid🟢
提取列表用户idSecUserIdFetcherget_all_secUid🟢
提取单个作品idAwemeIdFetcherget_aweme_id🟢
提取列表作品idAwemeIdFetcherget_all_aweme_id🟢
生成deviceIdDeviceIdManagergen_device_id🟢
生成devideId列表DeviceIdManagergen_device_ids🟢
全局格式化文件名-format_file_name🟢
创建用户目录-create_user_folder🟢
重命名用户目录-rename_user_folder🟢
创建或重命名用户目录-create_or_rename_user_folder🟢
🐦 Twitter
功能账号状态接口功能状态
推文详情🟣⚫fetch_tweet_detail🟢
用户信息🟣⚫fetch_user_profile🟢
主页推文🟣⚫fetch_post_tweet🟢
喜欢推文🟣fetch_like_tweet🟢
收藏推文🟣fetch_bookmark_tweet🟢
工具类类名接口功能状态
管理客户端配置ClientConfManager🟢
提取用户唯一IDUniqueIdFetcherget_unique_id🟢
提取列表用户唯一IDUniqueIdFetcherget_all_unique_ids🟢
提取推文IDTweetIdFetcherget_tweet_id🟢
提取列表推文IDTweetIdFetcherget_all_tweet_ids🟢
全局格式化文件名-format_file_name🟢
创建用户目录-create_user_folder🟢
重命名用户目录-rename_user_folder🟢
创建或重命名用户目录-create_or_rename_user_folder🟢
提取推文文案-extract_desc🟢
📱 WeiBo
功能账号状态接口功能状态
用户信息🟣⚫fetch_user_info🟢
用户详情🟣⚫fetch_user_detail🟢
主页微博🟣⚫fetch_user_weibo🟢
微博详情🟣⚫fetch_weibo_detail🟢
工具类类名接口功能状态
管理客户端配置ClientConfManager🟢
生成访客 CookieVisitorManagergen_visitor🟢
提取微博 IDWeiboIdFetcherget_weibo_id🟢
提取列表微博 IDWeiboIdFetcherget_all_weibo_id🟢
提取微博用户 IDWeiboUidFetcherget_weibo_uid🟢
提取列表微博用户 IDWeiboUidFetcherget_all_weibo_uid🟢
提取微博用户昵称WeiboScreenNameFetcherget_weibo_screen_name🟢
提取列表微博用户昵称WeiboScreenNameFetcherget_all_weibo_screen_name🟢
全局格式化文件名-format_file_name🟢
创建用户目录-create_user_folder🟢
重命名用户目录-rename_user_folder🟢
创建或重命名用户目录-create_or_rename_user_folder🟢
提取微博文案-extract_desc🟢

📸 截图

🎬 Bark

发送通知(GET)

发送通知(POST)

发送加密通知

🎬 DouYin

抖音单个作品

抖音主页作品

抖音点赞作品

抖音收藏作品

抖音收藏夹作品

抖音收藏原声

抖音合集作品

支持合集里任意作品链接解析

合集链接解析

抖音直播录制

单个直播录制

批量直播录制

抖音相关推荐

抖音好友作品

抖音直播弹幕

🎬 TikTok

TikTok单个作品

TikTok主页作品

TikTok点赞作品

TikTok收藏作品

TikTok播放列表作品

TikTok作品搜索

TikTok直播弹幕

ps. 懒得录了,放的douyin的弹幕,效果一样的。

🎬 Twitter

x单个推文

x主页推文

x喜欢推文

x收藏推文

🎬 WeiBo

WeiBo单个微博

WeiBo主页微博

📦 结构

📁 项目目录
.
|___.coverage
|___.github
| |___dependabot.yml
| |___ISSUE_TEMPLATE
| | |___ask-question.md
| | |___bug-report.md
| | |___feature_request.md
| |___workflows
| | |___Codecov.yml
| | |___deploy.yml
| | |___issue_similarity.yml
|___.gitignore
|___.vscode
| |___launch.json
| |___settings.json
|___babel.cfg
|___CHANGELOG.md
|___CNAME
|___CODE_OF_CONDUCT.md
|___CONTRIBUTING.en.md
|___CONTRIBUTING.md
|___CONTRIBUTORS.en.md
|___CONTRIBUTORS.md
|___coverage.xml
|___docs
| |___.vitepress
| | |___config.mts
| | |___theme
| | | |___index.ts
| | | |___Layout.vue
| | | |___styles
| | | | |___vars.css
| |___advance-guide.md
| |___cli.md
| |___en
| | |___advance-guide.md
| | |___api-examples.md
| | |___cli.md
| | |___guide
| | | |___api-examples.md
| | | |___apps
| | | | |___bark
| | | | | |___cli.md
| | | | | |___index.md
| | | | |___douyin
| | | | | |___cli.md
| | | | | |___index.md
| | | | |___f2
| | | | | |___cli.md
| | | | | |___index.md
| | | | |___tiktok
| | | | | |___cli.md
| | | | | |___index.md
| | | | |___twitter
| | | | | |___cli.md
| | | | | |___index.md
| | | | |___weibo
| | | | | |___cli.md
| | | | | |___index.md
| | | |___what-is-f2.md
| | |___index.md
| | |___install.md
| | |___markdown-examples.md
| | |___question-answer
| | | |___qa.md
| | |___quick-start.md
| | |___site-config.md
| | |___snippets
| | | |___bark
| | | | |___ciphertext.sh
| | | | |___client-config.py
| | | | |___generate-bytes.py
| | | | |___notification.py
| | | |___douyin
| | | | |___abogus.py
| | | | |___aweme-id.py
| | | | |___aweme-related.py
| | | | |___client-config.py
| | | | |___format-file-name.py
| | | | |___json-2-lrc.py
| | | | |___mix-id.py
| | | | |___one-video.py
| | | | |___post-stats.py
| | | | |___query-user.py
| | | | |___sec-user-id.py
| | | | |___support-link.md
| | | | |___token-manager.py
| | | | |___user-collection.py
| | | | |___user-collects.py
| | | | |___user-feed.py
| | | | |___user-folder.py
| | | | |___user-follow-live.py
| | | | |___user-follower.py
| | | | |___user-following.py
| | | | |___user-friend.py
| | | | |___user-get-add.py
| | | | |___user-like.py
| | | | |___user-live-im-fetch.py
| | | | |___user-live-room-id.py
| | | | |___user-live.py
| | | | |___user-mix.py
| | | | |___user-post.py
| | | | |___user-profile.py
| | | | |___video-get-add.py
| | | | |___webcast-id.py
| | | | |___webcast-signature.py
| | | | |___xbogus.py
| | | |___QA.md
| | | |___set-debug.py
| | | |___tiktok
| | | | |___aweme-id.py
| | | | |___check-live-alive.py
| | | | |___client-config.py
| | | | |___device-id.py
| | | | |___format-file-name.py
| | | | |___one-video.py
| | | | |___sec-uid.py
| | | | |___token-manager.py
| | | | |___unique-id.py
| | | | |___user-collect.py
| | | | |___user-folder.py
| | | | |___user-get-add.py
| | | | |___user-like.py
| | | | |___user-live-im-fetch.py
| | | | |___user-mix.py
| | | | |___user-playlist.py
| | | | |___user-post.py
| | | | |___user-profile.py
| | | | |___video-get-add.py
| | | | |___xbogus.py
| | | |___twitter
| | | | |___client-config.py
| | | | |___extract-desc.py
| | | | |___format-file-name.py
| | | | |___one-tweet.py
| | | | |___tweet-ids.py
| | | | |___user-bookmark.py
| | | | |___user-folder.py
| | | | |___user-get-add.py
| | | | |___user-like.py
| | | | |___user-profile.py
| | | | |___user-tweet.py
| | | | |___user-unique-ids.py
| | | |___weibo
| | | | |___client-config.py
| | | | |___extract-desc.py
| | | | |___extract-uid.py
| | | | |___format-file-name.py
| | | | |___one-weibo.py
| | | | |___user-detail.py
| | | | |___user-folder.py
| | | | |___user-get-add.py
| | | | |___user-profile-by-name.py
| | | | |___user-profile.py
| | | | |___user-weibo.py
| | | | |___visitor-cookie.py
| | | | |___weibo-id.py
| | | | |___weibo-screen-name.py
| | | | |___weibo-uid.py
| | |___team.md
| |___faq.md
| |___guide
| | |___api-examples.md
| | |___apps
| | | |___bark
| | | | |___cli.md
| | | | |___index.md
| | | |___douyin
| | | | |___cli.md
| | | | |___index.md
| | | |___f2
| | | | |___cli.md
| | | | |___index.md
| | | |___tiktok
| | | | |___cli.md
| | | | |___index.md
| | | |___twitter
| | | | |___cli.md
| | | | |___index.md
| | | |___weibo
| | | | |___cli.md
| | | | |___index.md
| | |___what-is-f2.md
| |___index.md
| |___install.md
| |___package.json
| |___public
| | |___bark
| | | |___bark-ciphertext-setting.jpg
| | | |___bark-ciphertext.jpg
| | | |___bark-key.jpg
| | | |___bark-token.jpg
| | |___douyin
| | | |___batch-lives.png
| | | |___cli-start-2.png
| | | |___cli-start.png
| | | |___code-start-2.png
| | | |___code-start.png
| | | |___log-2-console.png
| | | |___pytest-ok.png
| | | |___set-debug.png
| | | |___wss-connect.png
| | |___f2-help.png
| | |___f2-logo-with-no-shadow.png
| | |___f2-logo-with-shadow-mini.png
| | |___f2-logo-with-shadow-svg@0.25x.svg
| | |___f2-logo-with-shadow-svg@0.5x.svg
| | |___f2-logo-with-shadow-svg@0.75x.svg
| | |___f2-logo-with-shadow-svg@1.0x.svg
| | |___f2-logo-with-shadow-svg@1.5x.svg
| | |___f2-logo-with-shadow-svg@2.0x.svg
| | |___f2-logo-with-shadow.png
| | |___f2-logo.ico
| |___quick-start.md
| |___site-config.md
| |___snippets
| | |___bark
| | | |___ciphertext.sh
| | | |___client-config.py
| | | |___generate-bytes.py
| | | |___notification.py
| | |___douyin
| | | |___abogus.py
| | | |___aweme-id.py
| | | |___aweme-related.py
| | | |___batch-lives.py
| | | |___client-config.py
| | | |___format-file-name.py
| | | |___json-2-lrc.py
| | | |___mix-id.py
| | | |___one-video.py
| | | |___post-stats.py
| | | |___query-user.py
| | | |___sec-user-id.py
| | | |___support-link.md
| | | |___token-manager.py
| | | |___user-collection.py
| | | |___user-collects.py
| | | |___user-feed.py
| | | |___user-folder.py
| | | |___user-follow-live.py
| | | |___user-follower.py
| | | |___user-following.py
| | | |___user-friend.py
| | | |___user-get-add.py
| | | |___user-like.py
| | | |___user-live-im-fetch.py
| | | |___user-live-room-id.py
| | | |___user-live.py
| | | |___user-mix.py
| | | |___user-post.py
| | | |___user-profile.py
| | | |___video-get-add.py
| | | |___webcast-id.py
| | | |___webcast-signature.py
| | | |___xbogus.py
| | |___set-debug.py
| | |___tiktok
| | | |___aweme-id.py
| | | |___check-live-alive.py
| | | |___client-config.py
| | | |___device-id.py
| | | |___format-file-name.py
| | | |___one-video.py
| | | |___sec-uid.py
| | | |___token-manager.py
| | | |___unique-id.py
| | | |___user-collect.py
| | | |___user-folder.py
| | | |___user-get-add.py
| | | |___user-like.py
| | | |___user-live-im-fetch.py
| | | |___user-mix.py
| | | |___user-playlist.py
| | | |___user-post.py
| | | |___user-profile.py
| | | |___video-get-add.py
| | | |___xbogus.py
| | |___twitter
| | | |___client-config.py
| | | |___extract-desc.py
| | | |___format-file-name.py
| | | |___one-tweet.py
| | | |___tweet-ids.py
| | | |___user-bookmark.py
| | | |___user-folder.py
| | | |___user-get-add.py
| | | |___user-like.py
| | | |___user-profile.py
| | | |___user-tweet.py
| | | |___user-unique-ids.py
| | |___weibo
| | | |___client-config.py
| | | |___extract-desc.py
| | | |___extract-uid.py
| | | |___format-file-name.py
| | | |___one-weibo.py
| | | |___user-detail.py
| | | |___user-folder.py
| | | |___user-get-add.py
| | | |___user-profile-by-name.py
| | | |___user-profile.py
| | | |___user-weibo.py
| | | |___visitor-cookie.py
| | | |___weibo-id.py
| | | |___weibo-screen-name.py
| | | |___weibo-uid.py
| |___team.md
|___f2
| |___apps
| | |___bark
| | | |___api.py
| | | |___cli.py
| | | |___crawler.py
| | | |___filter.py
| | | |___handler.py
| | | |___help.py
| | | |___model.py
| | | |___test
| | | | |___test_bark_crawler.py
| | | |___utils.py
| | |___douyin
| | | |___algorithm
| | | | |___webcast_signature.js
| | | | |___webcast_signature.py
| | | |___api.py
| | | |___cli.py
| | | |___crawler.py
| | | |___db.py
| | | |___dl.py
| | | |___filter.py
| | | |___handler.py
| | | |___help.py
| | | |___model.py
| | | |___proto
| | | | |___douyin_webcast.proto
| | | | |___douyin_webcast_pb2.py
| | | |___test
| | | | |___test_douyin_apps_model.py
| | | | |___test_douyin_aweme_id.py
| | | | |___test_douyin_crawler.py
| | | | |___test_douyin_handler.py
| | | | |___test_douyin_lrc.py
| | | | |___test_douyin_room_id.py
| | | | |___test_douyin_sec_user_id.py
| | | | |___test_douyin_token.py
| | | | |___test_douyin_webcast_id.py
| | | | |___test_douyin_webcast_signature.py
| | | |___utils.py
| | |___tiktok
| | | |___api.py
| | | |___cli.py
| | | |___crawler.py
| | | |___db.py
| | | |___dl.py
| | | |___filter.py
| | | |___handler.py
| | | |___help.py
| | | |___model.py
| | | |___proto
| | | | |___tiktok_webcast.proto
| | | | |___tiktok_webcast_pb2.py
| | | |___test
| | | | |___test_tiktok_aweme_id.py
| | | | |___test_tiktok_crawler.py
| | | | |___test_tiktok_device_id.py
| | | | |___test_tiktok_sec_user_id_fetcher.py
| | | | |___test_tiktok_token.py
| | | |___utils.py
| | |___twitter
| | | |___api.py
| | | |___cli.py
| | | |___crawler.py
| | | |___db.py
| | | |___dl.py
| | | |___filter.py
| | | |___handler.py
| | | |___help.py
| | | |___model.py
| | | |___test
| | | | |___test_model.py
| | | | |___test_tweet_desc.py
| | | | |___test_tweet_id.py
| | | | |___test_unique_id.py
| | | |___utils.py
| | |___weibo
| | | |___api.py
| | | |___cli.py
| | | |___crawler.py
| | | |___db.py
| | | |___dl.py
| | | |___filter.py
| | | |___handler.py
| | | |___help.py
| | | |___model.py
| | | |___test
| | | | |___test_gen_visitor.py
| | | | |___test_handler.py
| | | | |___test_weibo_desc.py
| | | | |___test_weibo_id.py
| | | | |___test_weibo_screen_name.py
| | | | |___test_weibo_uid.py
| | | |___utils.py
| | |_____apps__.py
| | |_____init__.py
| |___cli
| | |___cli_commands.py
| | |___cli_console.py
| | |_____init__.py
| |___conf
| | |___app.yaml
| | |___conf.yaml
| | |___defaults.yaml
| | |___test.yaml
| |___crawlers
| | |___base_crawler.py
| |___db
| | |___base_db.py
| |___dl
| | |___base_downloader.py
| |___exceptions
| | |___api_exceptions.py
| | |___conf_exceptions.py
| | |___db_exceptions.py
| | |___file_exceptions.py
| | |_____init__.py
| |___helps.py
| |___i18n
| | |___translator.py
| |___languages
| | |___en_US
| | | |___LC_MESSAGES
| | | | |___en_US.mo
| | |___zh_CN
| | | |___LC_MESSAGES
| | | | |___zh_CN.mo
| |___log
| | |___logger.py
| |___utils
| | |___abogus.py
| | |___conf_manager.py
| | |___decorators.py
| | |___json_filter.py
| | |___utils.py
| | |___xbogus.py
| | |____dl.py
| | |____signal.py
| | |____singleton.py
| | |_____init__.py
| |_____init__.py
| |_____main__.py
|___LICENSE
|___make_pot.bat
|___make_pot.sh
|___pnpm-lock.yaml
|___pyproject.toml
|___pytest.ini
|___README.en.md
|___README.md
|___SECURITY.md
|___tests
| |___data
| | |___douyin
| | | |___webcast
| | | | |___dict
| | | | | |___WebcastGiftMessage.json
| | | | | |___WebcastLiveShoppingMessage.json
| | | | | |___WebcastProductChangeMessage.json
| | | | | |___WebcastRoomUserSeqMessage.json
| | | | | |___WebcastSocialMessage.json
| | | | | |___WebcastStatsMessage.json
| | | | | |___WebcastUpdateFanTicketMessage.json
| | |___tiktok
| | | |___webcast
| | | | |___dict
| | | | | |___WebcastChatMessage.json
| | | | | |___WebcastGiftMessage.json
| | | | | |___WebcastLikeMessage.json
| | | | | |___WebcastLinkMicFanTicketMethod.json
| | | | | |___WebcastMemberMessage.json
| | | | | |___WebcastRoomStreamAdaptationMessage.json
| | | | | |___WebcastRoomUserSeqMessage.json
| | | | | |___WebcastSocialMessage.json
| | | | | |___WebcastStatsMessage.json
| | | | |___protobuf
| | | | | |___WebcastOecLiveShoppingMessage_0.bin
| | | | | |___WebcastOecLiveShoppingMessage_1.bin
| | | | | |___WebcastOecLiveShoppingMessage_2.bin
| |___package-lock.json
| |___test_abogus.py
| |___test_aes.py
| |___test_cli_commands.py
| |___test_cli_console.py
| |___test_desc_limit.py
| |___test_dl.py
| |___test_excetions.py
| |___test_gzip.py
| |___test_i18n.py
| |___test_json_filter.py
| |___test_logger.py
| |___test_py_version.py
| |___test_rsa.py
| |___test_signal.py
| |___test_singleton.py
| |___test_timestamp.py
| |___test_utils.py
| |___test_xbogus.py

💰 赞助商

TikHub IO_Banner zh

TikHub 提供超过 700 个端点,可用于从 14+ 个社交媒体平台获取与分析数据 —— 包括视频、用户、评论、商店、商品与趋势等,一站式完成所有数据访问与分析。

通过每日签到,可以获取免费额度。可以使用我的注册邀请链接:https://user.tikhub.io/users/signup?referral_code=6hLcGD94 或 邀请码:6hLcGD94,注册并充值即可获得$2额度。

TikHub 提供以下服务:

👨‍💻 贡献

如果你有兴趣为 F2 贡献代码,请查看贡献指南

🙏 鸣谢

没有这些库和程序,F2将无法实现这些功能,对于他们的贡献和努力,表示由衷的感谢。

⚖️ 协议&声明

  • 请严格遵守爬虫规范,不要使用此项目进行任何违法行为。
  • 不出售、共享、加密、上传、研究和传播任何个人信息。
  • 项目及其相关代码仅供学习与研究使用,不构成任何明示或暗示的保证。
  • 使用者因使用此项目及其代码可能造成的任何形式的损失,使用者应当自行承担一切风险。
  • 请遵守Apache-2.0开源协议,不要删除或修改代码中的任何版权信息。
  • 如果使用者需要商业化使用此项目,必须指定项目仓库地址,不得删除或修改项目中的任何版权信息。
  • 如果使用者使用此项目及其代码,即代表使用者同意遵守上述规定。

📜 许可

Apache-2.0 license

Copyright (c) 2023 JohnserfSeed

📧 联系

只回答关于F2的问题,可以通过以下方式联系我,请耐心等待,会尽快回复你。