Skip to main content

轻量、异步、开箱即用的社交媒体聚合解析库

Project description

🔗 ParseHub

社交媒体聚合解析器

PyPI version Python License: MIT GitHub stars

轻量、异步、开箱即用的社交媒体聚合解析库,支持 16+ 平台 🚀

快速开始 · 支持平台 · 高级用法 · TG Bot


✨ 特性

  • 🌍 广泛的平台支持 — 覆盖国内外 16+ 主流社交媒体
  • 🧹 隐私保护 — 自动清除链接中的跟踪参数, 返回干净的原始链接
  • 🎬 多媒体支持 — 视频 / 图文 / 动图 / 实况照片,一网打尽
  • 📦 开箱即用async/await 原生支持,API 极简
  • 🤖 Telegram Bot — 基于本项目的 Bot 已上线 → @ParsehuBot

📦 安装

# pip
pip install parsehub

# uv (推荐)
uv add parsehub

要求 Python ≥ 3.12

🚀 快速开始

from parsehub import ParseHub

result = ParseHub().parse_sync("https://www.xiaoheihe.cn/app/bbs/link/174972336")
print(result)
# ImageParseResult(platform=小黑盒, title=名为希望和绝望的红包, content=[cube_doge][cube_doge][cube_doge], media=[17], raw_url=https://www.xiaoheihe.cn/app/bbs/link/174972336)

下载媒体

from parsehub import ParseHub

result = ParseHub().download_sync("https://www.xiaoheihe.cn/app/bbs/link/174972336")
print(result)
# DownloadResult(media=[ImageFile(path='D:\\downloads\\名为希望和绝望的红包\\0.jpg', width=1773, height=2364), ...], output_dir=D:\downloads\名为希望和绝望的红包)

🌐 支持平台

平台 视频 图文 其他
Twitter / X
Instagram
YouTube 🎵 音乐
Facebook
Threads
Bilibili 📝 动态
抖音 / TikTok
微博
小红书
贴吧
微信公众号
快手
酷安
皮皮虾
最右
小黑盒

🔧 更多平台持续接入中...

🔑 高级用法

下载进度回调

from parsehub import ParseHub


class ProgressTracker:
    async def __call__(self, current: int, total: int, unit: str, *args, task_name: str = "", **kwargs):
        print(f"[{task_name}] {current}/{total} ({unit})")


result = ParseHub().download_sync(
    "https://example.com",
    callback=ProgressTracker(),
    callback_args=("extra_arg",),
    callback_kwargs={"task_name": "demo"},
)

Cookie 登录 & 代理

部分平台的内容需要登录才能访问,通过 Cookie 即可解锁:

from parsehub import ParseHub

ph = ParseHub(cookie="key1=value1; key2=value2", proxy="http://127.0.0.1:7890", )

Cookie 支持多种格式传入:

# 字符串
ParseHub(cookie="key1=value1; key2=value2")

# JSON 字符串
ParseHub(cookie='{"key1": "value1", "key2": "value2"}')

# 字典
ParseHub(cookie={"key1": "value1", "key2": "value2"})

目前支持 Cookie 登录的平台:

Twitter · Instagram · Kuaishou · Bilibili · YouTube

全局配置

from parsehub.config import GlobalConfig

# 自定义默认下载目录
GlobalConfig.default_save_dir = "./my_downloads"

🤝 参考项目

📜 开源协议

本项目基于 MIT License 开源。


如果这个项目对你有帮助,欢迎点个 ⭐ Star!

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

parsehub-2.0.11.tar.gz (55.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

parsehub-2.0.11-py3-none-any.whl (73.2 kB view details)

Uploaded Python 3

File details

Details for the file parsehub-2.0.11.tar.gz.

File metadata

  • Download URL: parsehub-2.0.11.tar.gz
  • Upload date:
  • Size: 55.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for parsehub-2.0.11.tar.gz
Algorithm Hash digest
SHA256 df01cabcc0fb856367da7ceb99415a20ca449f4b7bd7a35a8b930f5ac5e684c3
MD5 4f44accf8b4df79e48a290acc2cde57f
BLAKE2b-256 0e986b5acb97f68334992ccb3c0021724525c4358668315a33e2e502d136aadf

See more details on using hashes here.

Provenance

The following attestation bundles were made for parsehub-2.0.11.tar.gz:

Publisher: python-publish.yml on z-mio/ParseHub

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file parsehub-2.0.11-py3-none-any.whl.

File metadata

  • Download URL: parsehub-2.0.11-py3-none-any.whl
  • Upload date:
  • Size: 73.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for parsehub-2.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 7c5b63162c58ed6e21dcb59a38cdae74a58b86ef3dff6d01d2165ab16c15784b
MD5 d39ee0d60c7e8ca6c83945a83504dafa
BLAKE2b-256 4bbb908b4975e8a1ebe6ebe8e0e504e6d2aaa537969c4891e82230f317c283a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for parsehub-2.0.11-py3-none-any.whl:

Publisher: python-publish.yml on z-mio/ParseHub

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page