aria2 资料

https://www.jianshu.com/p/8124b5b6ef95
https://quan.ithome.com/0/331/853.htm
http://www.360doc.com/content/18/0707/23/56810834_768650003.shtml

============================================

*****

https://www.52pojie.cn/thread-643364-1-1.html

https://aria2c.com/usage.html

待用..

第一步: 以RPC模式启动Aria2

启动命令可以很简单,因为可以附加配置文件:

aria2c --conf-path=./aria2.conf
pause

这是windows上的,linux去掉pause就可以了.

然后附加上配置文件:

#允许rpc
enable-rpc=true
#允许非外部访问
rpc-listen-all=true
#RPC端口, 仅当默认端口被占用时修改
rpc-listen-port=6800

#最大同时下载数(任务数), 路由建议值: 3
max-concurrent-downloads=32
#断点续传
continue=true
#同服务器连接数
max-connection-per-server=16
#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要
min-split-size=10M
#单文件最大线程数, 路由建议值: 5
split=256
#下载速度限制
max-overall-download-limit=0
#单文件速度限制
max-download-limit=0
#上传速度限制
max-overall-upload-limit=0
#单文件速度限制
max-upload-limit=0

#文件保存路径, 默认为当前启动位置
#dir="./"
#使用代理
all-proxy=localhost:1080
#添加引用页
referer=http://images.dmzj.com/

配置文件就这么写就行了.

JSON-RPC向aria2中添加任务

不说多了,直接上Python代码:

import json
from urllib.request import urlopen
jsonreq = json.dumps({'jsonrpc': '2.0', 'id': 'qwer',
                              'method': 'aria2.addUri',
                              'params': [[url],{'refer': url,'dir':filepath}],
                              }).encode()
        c = urlopen('http://localhost:6800/jsonrpc', jsonreq)

这里的一个问题就是发送的时候一定要是以二进制的形式发送,而不是以字符串的形式发送,官方给的例程没有对着这个json进行encode,所以我用的时候就会报错.

原文地址:https://www.cnblogs.com/pythonClub/p/10899768.html