绅♂士♂站♂小♂爬♂虫

Build Status

English 繁體中文

xeHentai Web界面

快速入门

windows用户可以下载可执行文件 这里 或这里

或者可以运行源码

pip install -U requests[socks] git clone https://github.com/fffonion/xeHentai.git cd xeHentai python ./setup.py install xeH

新版本默认为命令行模式,如果需要使用交互模式,请运行xeH.py -i

详细说明

配置文件

使用源码运行的用户请先将xeHentai/config.py复制到当前目录。

配置的优先级为 交互模式 > 命令行参数 > 用户config.py > 内置config.py。

常用参数:

高级参数:

命令行模式

用法: xeH [-u USERNAME] [-k KEY] [-c COOKIE] [-i] [--daemon] [-d DIR] [-o] [-j BOOL] [-r BOOL] [-p PROXY] [--proxy-image | --proxy-image-only] [--rpc-interface ADDR] [--rpc-port PORT] [--rpc-secret ...] [--rpc-open-browser BOOL] [--delete-task-files BOOL] [-a BOOL] [--download-range a-b,c-d,e] [-t N] [--timeout N] [--low-speed-threshold N] [-f] [-l /path/to/eh.log] [-v] [-h] [--version] [url [url ...]] 绅♂士下载器 必选参数: url 下载页的网址 可选参数: -u USERNAME, --username USERNAME 用户名 -k KEY, --key KEY 密码 -c COOKIE, --cookie COOKIE Cookie字符串, 如果指定了用户名和密码, 此项会被忽略 -i, --interactive 交互模式, 如果开启后台模式, 此项会被忽略 (默认: False) --daemon 后台模式 (默认: False) -d DIR, --dir DIR 设置下载目录 (默认: 当前目录) -o, --download-ori 是否下载原始图片(如果存在), 需要登录 (默认: False) -j BOOL, --jpn-title BOOL 使用日语标题, 如果关闭则使用英文或罗马字标题 (默认: True) -r BOOL, --rename-ori BOOL 将图片重命名为原始名称, 如果关闭则使用序号 (默认: False) -p PROXY, --proxy PROXY 设置代理, 可以指定多次, 当前支持的类型: socks5/4a, http(s), glype. 代理默认只用于扫描网页 (默认: 空) --proxy-image 同时使用代理来下载图片和扫描网页(默认: True) --proxy-image-only 仅使用代理来下载图片, 不用于扫描网页 (默认: False) --rpc-interface ADDR 设置JSON-RPC监听IP (默认: localhost) --rpc-port PORT 设置JSON-RPC监听端口 (默认: None) --rpc-secret ... 设置JSON-RPC密钥 (默认: None) --rpc-open-browser BOOL RPC服务端启动后自动打开浏览器页面 (默认: True) --delete-task-files BOOL 删除任务时同时删除下载的文件 (默认: False) -a BOOL, --archive BOOL 下载完成后生成zip压缩包并删除下载目录 (默认: False) --download-range a-b,c-d,e 设置下载的图片范围, 格式为 开始位置-结束位置, 或者单张图片的位置, 使用逗号来分隔多个范围, 例如 5-10,15,20-25, 默认为下载所有 --low-speed-threshold N 设置最低下载速度,低于此值将换源重新下载 (默认: 10 KB/s) -t N, --thread N 下载线程数 (默认: 5) --timeout N 设置下载图片的超时 (默认: 10秒) -f, --force 忽略配额判断, 继续下载 (默认: False) -l /path/to/eh.log, --logpath /path/to/eh.log 保存日志的路径 (默认: eh.log) -v, --verbose 设置日志装逼等级 (默认: 2) -h, --help 显示本帮助信息 --version 显示版本信息

如果参数未指定, 则使用config.py中的默认值;否则将覆盖config.py设置的值。

JSON-RPC

在指定rpc_interfacerpc_port后, xeHentai会启动RPC服务器。使用JSON-RPC 2.0标准。典型的请求如下:

$ curl localhost:8010/jsonrpc -d '{"jsonrpc": "2.0", "id": 1, "method":"xeH.addTask", "params":[[args],{kwargs}]}' {"jsonrpc": "2.0", "id": 1, "result": "36df423e"}

rpc_secret可用于提高安全性。如果rpc_secret设置为hentai, 则需在params中带上这个值:

$ curl localhost:8010/jsonrpc -d '{"jsonrpc": "2.0", "id": 1, "method":"xeH.addTask", "params":["token:hentai",[args],{kwargs}]}' {"jsonrpc": "2.0", "id": 1, "result": "36df423e"}

其中method为调用的方法,必须以xeH. 开头。在core.py的xeHentai类中,所有不以下划线_开头的方法均可以通过RPC调用,但需将方法名的下划线命名法改为驼峰命名法。如add_task需改为addTask

参数列表请参阅xeHentai类。

如果浏览器安装了用户脚本插件,可以下载xeHentaiHelper.user.js,将会在页面上添加Add to xeHentai链接,以支持将当前页面添加到xeHentai中。Chrome用户需要安装Tampermonkey, Firefox用户需要安装Greasemonkey,Opera和傲游用户需要安装暴力猴。

由于绅士站启用了https,而rpc走的是http,所以chrome用户需要点击地址栏右侧盾牌,选择“加载不安全的脚本”

运行模式

如果通过命令行或交互模式指定了下载url,xeHentai会在下载完成h.json中存储的任务(如果存在)及指定的url后退出。

如果命令行没有指定url,xeHentai将会在完成存档h.json中的队列(如果存在)后继续等待。

如果指定了后台模式(-d或设置daemonTrue),xeHentai将会在保持后台运行。

代理

目前支持三种模式的代理:

可以指定多个代理,格式如['socks5h://127.0.0.1:1080', 'http://127.0.0.1:8080']

默认情况下代理会被用于扫描网页和下载图片。如果不需要使用代理下载图片,请在配置文件中设置proxy_imageFalse

如果使用代理仅用于突破封锁的目的,则此项可以设置为False;如果需要保证隐私,请将此项设置为True。使用glype代理的用户建议将此项设为False

如果仅需要使用代理下载图片,不需要扫描网页,请在配置文件中设置proxy_image_onlyTrue,或者在运行时加上--proxy-image-only参数。如果在配置中的proxy_imageproxy_image_only均为True,则proxy_image将被忽略。

下载范围

下载范围的格式为使用开始位置-结束位置,例如5-10表示下载第5到第10张图片,包括第5和第10张;或者单个位置,例如15表示下载第15张图片。

可以通过逗号来分割多个范围,例如5-10,15表示下载第5到第10张图片以及第15张图片。

如果不输入下载范围,则默认下载所有图片。

其他说明

配额

直接从服务器及镜像途径下载的图片计入配额,从H@H下载的不计算;下载新发布的、冷门的漫画以及原图更有可能消耗配额,下载热门漫画基本不消耗配额

License

GPLv3


@fffonion@fffonion                         Blog  博客