JMComic-Crawler-Python/README.md

71 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Python API For JMComic (禁漫天堂)
封装了一套可用于爬取JM的Python API.
简单来说就是可以通过简单的几行Python代码实现下载JM上的本子到本地并且是处理好的图片.
**友情提示珍爱JM为了减轻JM的服务器压力请不要一次性爬取太多本子西门🙏🙏🙏**.
## 安装教程
* 通过pip官方源安装推荐
```shell
pip install jmcomic -i https://pypi.org/project --upgrade
```
* 本地安装
```shell
pip install -e ./
```
## 快速上手
使用下面的两行代码即可实现功能把某个本子集album里的所有本子photo下载到本地
```python
import jmcomic # 导入此模块,需要先安装.
jmcomic.download_album('422866') # 传入要下载的album的id即可下载整个album到本地.
# 上面的这行代码还有一个可选参数option: JmOption表示配置项
# 配置项的作用是告诉程序下载时候的一些选择,
# 比如,要下载到哪个文件夹,使用怎样的路径组织方式(比如[/作者/本子id/图片] 或者 [/作者/本子名称/图片].
# 如果没有配置,则会使用 JmOption.default(),下载的路径是[当前工作文件夹/本子名称/图片].
```
进一步的使用可以参考usage文件夹下的示例代码: `getting_started.py` `sample_usage.py`
## 项目特点
- **绕过Cloudflare的反爬虫**
- 支持使用**Github Action**下载漫画,不会编程都能用([教程使用Github Actions下载禁漫本子](./assets/docs/教程使用Github%20Actions下载禁漫本子.md)
- 可配置性强
- 不配置也能使用,十分方便
- 配置可以从**配置文件**生成无需写Python代码
- 配置点有:`是否使用磁盘缓存` `是否使用代理` `图片类型转换` `本子下载路径` `请求元信息headers,cookies,重试次数)等 `
- 多线程下载(可细化到一图一线程,效率极高)
- 跟进了JM最新的图片分割算法2023-02-08
## 使用小说明
* Python >= 3.7
* 项目只有代码注释没有API文档。因此想深入高级地使用自行看源码和改造代码叭 ^^_
## 项目文件夹介绍
* assets存放一些非代码的资源文件
* config存放配置文件
* docs项目文档
* src存放源代码
* jmcomic`jmcomic`模块
* tests测试目录存放测试代码使用unittest
* usage用法目录存放示例/使用代码
## 感谢以下项目
### 图片分割算法代码+禁漫移动端API
[![Readme Card](https://github-readme-stats.vercel.app/api/pin/?username=tonquer&repo=JMComic-qt)](https://github.com/tonquer/JMComic-qt)