Skip to main content

A Pixiv Mass Downloading Tool

Project description

Pikax:unicorn:

GitHub stars PyPI PyPI - License GitHub code size in bytes GitHub last commit PyPI - Downloads
↑↑↑↑↑↑↑ +1?
Pikax的目的是提供一个使用简单且强大的Pixiv[P站]批量下载工具。

English ver

图形界面版

不提供翻墙,请使用VPN或者飞机

  • 日志
  • 用P站账号或游客登录即可
  • 支持多核下载
    • 排行榜
    • 搜索
    • 特定用户所有的插画、收藏、漫画
    • 任意URL的插画、漫画
  • 语言支持
    • 英文 (默认)
    • 中文
  • 下载

从源码创建执行文件(适用于非windows用户)

依赖 pyinstaller
pip install pyinstaller

git clone https://github.com/Redcxx/Pikax.git
cd Pikax/gui
# 按需求修改 main.spec
pyinstaller main.py
cd dist
ls

接口版

为了宣扬民族核心价值观,本接口仅提供单核多线程下载

  pip install Pikax

需要

  pip install requests

目前支持的下载功能

  • 搜索
    • 关键字/标签,数量,类别,模式,受欢迎程度
  • 排行榜
    • 日期,数量,模式,内容种类
  • 你的或者别人的
    • 插画,漫画,收藏

在计划中的功能

  • 搜索画师
  • 作品/画师 过滤
  • 。。。
  • 有人再做吧,我自己够用了owo

试用 demo.py

下载当日排行榜前50的插画

  from pikax.pikax import Pikax

  pixiv = Pikax()
  results = pixiv.rank(limit=50)
  pixiv.download(results)

搜索并下载arknights相关,赞数约1000的50张插画

  from pikax.pikax import Pikax, settings, params

  pixiv = Pikax(settings.username, settings.password)
  results = pixiv.search(keyword='arknights', limit=50, popularity=1000, match=params.Match.PARTIAL)
  pixiv.download(results)

下载用户的作品 (需要登录,settings.py有临时的账号)

  from pikax.pikax import Pikax, settings, params

  # 自己的
  pixiv = Pikax()
  user = pixiv.login(username=settings.username, password=settings.password)  # 登录
  bookmarks = user.bookmarks(limit=20)  # 获取收藏
  pixiv.download(bookmarks)  # 下载

  # 任何用户
  pixiv = Pikax()
  pixiv = Pikax(settings.username, settings.password)
  other_user = pixiv.visits(user_id=201323)  # 输入id得到用户

  illusts = other_user.illusts(limit=25)  # 获取他的画作
  pixiv.download(illusts)  # 下载

  mangas = other_user.mangas(limit=10)  # 获取他的漫画
  pixiv.download(mangas)  # 下载

  bookmarks = other_user.bookmarks(limit=20)  # 获取他的收藏
  pixiv.download(bookmarks)  # 下载

用作品id下载

  from pikax.pikax import Pikax

  pixiv = Pikax()
  pixiv.download(illust_id=75608670)

更多例子请参考demo.py

更详细的接口详情请参考models.py

更多操作

下载排行榜前50且收藏高于1000的作品

  from pikax.pikax import Pikax

  pixiv = Pikax()
  results = pixiv.rank(limit=50)  # 排行榜前50

  new_results = results.bookmarks > 1000  # 去除收藏小于 1000
  pixiv.download(new_results)  # 下载

搜索'初音'相关的200个收藏约1000的作品并筛选出其中赞大于1000且浏览量大于20000的作品

  from pikax.pikax import Pikax, settings

  pixiv = Pikax(settings.username, settings.password)
  results = pixiv.search(keyword='初音', limit=200, popularity=1000)  # 搜索

  new_results = (results.bookmarks > 1000).views > 20000  # 获取 赞 > 1000 和 浏览 > 20000 的作品
  pixiv.download(new_results)  # 下载

更多操作请参考models.py

个性化设置请前往settings.py


联系我可发邮件到这里

Project details


Download files

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

Source Distribution

pikax-2.0.14.tar.gz (30.6 kB view hashes)

Uploaded Source

Built Distribution

pikax-2.0.14-py3-none-any.whl (38.2 kB view hashes)

Uploaded Python 3

Supported by

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