https://www.jianshu.com/p/8124b5b6ef95
https://quan.ithome.com/0/331/853.htm
http://www.360doc.com/content/18/0707/23/56810834_768650003.shtmlhtml
============================================linux
*****json
https://www.52pojie.cn/thread-643364-1-1.htmlwindows
https://aria2c.com/usage.html服務器
待用..url
啓動命令能夠很簡單,由於能夠附加配置文件:線程
aria2c --conf-path=./aria2.conf
pause
這是windows上的,linux去掉pause就能夠了.代理
而後附加上配置文件:code
#容許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/
配置文件就這麼寫就好了.server
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
,因此我用的時候就會報錯.