欢迎光临 - 我的站长站,本站所有资源仅供学习与参考,禁止用于商业用途或从事违法行为!

python教程

基于Aria2批量下载API接口源码

python教程 我的站长站 2023-07-15 共4人阅读
import requests
import json
 
 
class Aria2Download:
    def __init__(self):
        self.api = "http://localhost:6800/jsonrpc"
        # 消息id,aria2会原样返回这个id,可以自动生成也可以用其他唯一标识
        self.id = "QXJpYU5nXzE2NzUxMzUwMDFfMC42Mzc0MDA5MTc2NjAzNDM="
 
    def addUri(self, url, path, file=None, proxy=None):
        """
        添加任务
        :param url: 文件下载地址
        :param path: 文件保存路径
        :param file: 文件保存名称
        :param proxy: 代{过}{滤}理地址
        :return:
        """
        data = {
            "id": self.id,
            "jsonrpc": "2.0",
            "method": "aria2.addUri",
            "params": [[url], {"dir": path, "out": file, "all-proxy": proxy}]
        }
        req = requests.post(url=self.api, data=json.dumps(data))
        return_json = req.json()
        req.close()
        # print("addUri", return_json)
        return return_json
 
    def getGlobalStat(self):
        """
        获取全部下载信息
        :return:
        """
        data = {
            "jsonrpc": "2.0",
            "method": "aria2.getGlobalStat",
            "id": self.id
        }
        req = requests.post(url=self.api, data=json.dumps(data))
        return_json = req.json()
        req.close()
        # print("getGlobalStat", return_json)
        return return_json
 
    def tellActive(self):
        """
        正在下载
        :return:
        """
        data = {
            "jsonrpc": "2.0",
            "method": "aria2.tellActive",
            "id": self.id, "params": [
                ["gid", "totalLength", "completedLength", "uploadSpeed", "downloadSpeed", "connections", "numSeeders",
                 "seeder", "status", "errorCode", "verifiedLength", "verifyIntegrityPending", "files", "bittorrent",
                 "infoHash"]]
        }
 
        req = requests.post(url=self.api, data=json.dumps(data))
        return_json = req.json()
        req.close()
        # print("getGlobalStat", return_json)
        return return_json
 
    def tellWaiting(self):
        """
        正在等待
        :return:
        """
        data = {"jsonrpc": "2.0", "method": "aria2.tellWaiting",
                "id": self.id,
                "params": [0, 1000, ["gid", "totalLength",
                                     "completedLength",
                                     "uploadSpeed",
                                     "downloadSpeed",
                                     "connections",
                                     "numSeeders",
                                     "seeder", "status",
                                     "errorCode",
                                     "verifiedLength",
                                     "verifyIntegrityPending"]
                           ]
                }
        req = requests.post(url=self.api, data=json.dumps(data))
        return_json = req.json()
        req.close()
        print("tellWaiting", return_json)
        return return_json
 
    def tellStopped(self):
        """
        已完成/已停止
        :return:
        """
        data = {"jsonrpc": "2.0",
                "method": "aria2.tellStopped",
                "id": self.id,
                "params": [-1, 1000, ["gid", "totalLength",
                                      "completedLength",
                                      "uploadSpeed",
                                      "downloadSpeed",
                                      "connections",
                                      "numSeeders", "seeder",
                                      "status", "errorCode",
                                      "verifiedLength",
                                      "verifyIntegrityPending"]]
                }
        req = requests.post(url=self.api, data=json.dumps(data))
        return_json = req.json()
        req.close()
        # print("tellStopped", return_json)
        return return_json
 
    def tellStatus(self, gid):
        """
        任务状态
        :param gid: 任务ID
        :return:
        """
        data = {"jsonrpc": "2.0", "method": "aria2.tellStatus", "id": self.id, "params": [gid]}
        req = requests.post(url=self.api, data=json.dumps(data))
        return_json = req.json()
        req.close()
        # print("tellWaiting", return_json)
        return return_json
 
    def removeDownloadResult(self, gid):
        """
        删除下载结束的任务
        :param gid: 任务ID
        :return:
        """
        data = {"jsonrpc": "2.0", "method": "aria2.removeDownloadResult", "id": self.id, "params": [gid]}
        req = requests.post(url=self.api, data=json.dumps(data))
        return_json = req.json()
        req.close()
        # print("removeDownloadResult", return_json)
        return return_json


相关推荐
  • API源码
  • API接口
  • Aria2
  • 批量下载
  • PHP智云V1.3全能API接口网站源码
    PHP智云V1.3全能API接口网站源码

    智云全能API接口PHP源码V1.3版本接口数据由智云平台开发及整理源码直接上传即可访问,无需数据库,不支持上传二级目录访问!源码上传后请访问:你的域名/inde.html(可以将inde.html重新修改其他名称访问)...

    php源码 543 4年前
  • 2020年最新HTML+API版防红网站模板
    2020年最新HTML+API版防红网站模板

    2020年最新HTML+API版防红网站模板,HTML+JS+API框架,打开即可使用,不需要任何环境。支持多种防红方式,多种短域名后缀。

    html模板 453 4年前
  • HTML+API美腿zipa图片瀑布流网站模板
    HTML+API美腿zipa图片瀑布流网站模板

    HTML+API美腿zipa图片瀑布流网站模板,图片采集与自葫芦侠,流量不走本地,虚拟空间都能部署,适合引流请在下载后24小时内删除,否则一切法律后果请自行承担...

    html模板 653 4年前
  • 最新ASP星外IDC代理API程序网站源码
    最新ASP星外IDC代理API程序网站源码

    最新ASP星外IDC代理API程序网站源码这套ASP源码带有全新登录界面+会员中心,源码适合使用代理星外主机管理系统的API,把文件上传到支持ASP空间即可使用 ,目录记事本打开Global.asa修改成你的星外代理...

    asp源码 251 4年前
  • 微信域名检测源码 带API接口
    微信域名检测源码 带API接口

    微信域名检测源码 带API接口,市面价格2000+的源码,高性能优化处理,目前市场大,运营利润高。可自动检查域名微信内是否报红。极致域名检测系统安装教程此版本是老版本,现在发出来供大家免费使用,可简...

    app源码 617 4年前
  • 支付宝企业账户转账个人账户php接口代码

    前言支付宝企业账户转账个人账户php接口代码,该接口主要用于平台对用户奖励的发放,场景也很简单就是我在你平台上有余额,我提现,平台给钱。只不过项目中是用的官方的SDK调用的,仔细看了下那个SDK目录,把很多无用的接口(目前自己用不上)也包含在里面,作为强...

    php教程 161 2年前
  • QQ互联API申请教程(图文)

    1、登录QQ互联在浏览器上打开网址:http://connect.qq.com/。点击右上角【登录】按钮,使用QQ账号登录。2、管理中心点击【管理中心】进入应用管理页面。(图中位置1)完善开发者资料,如果手册登录需要完善开发者资料。点击【创建应用】,开始创建应用。(图中位...

    经验分享 1187 4年前
  • 苹果CMS开放API相关服务接口

    开放式API数据接口-声明本接口仅供学习研究使用,请勿用于生产环境和非法渠道;不能保证稳定性和正确性;请牢记苹果cms官方域名: www.maccms.com(暂时关闭) www.maccms.net; 网路出现多个盗版苹果v10的程序,改头换面加入后门,请误下载使用没有诚信的盗版程序...

    苹果cms教程 955 4年前
  • 织梦熊掌号api自动提交代码

    复制一下PHP代码,新建一个PHP文件,放在网站根目录,每天更新完后运行一次就行了!只适用于自适应站点。<?php require_once ("include/common.inc.php"); require_once "include/arc.partview.class.php";require_once(&#39;include/charset.func.php&#3...

    织梦cms教程 210 4年前
  • 2020年最新HTML+API版防红网站模板
    2020年最新HTML+API版防红网站模板

    2020年最新HTML+API版防红网站模板,HTML+JS+API框架,打开即可使用,不需要任何环境。支持多种防红方式,多种短域名后缀。

    html模板 453 4年前
  • 在线版Aria2 WebUI加速下载工具
    在线版Aria2 WebUI加速下载工具

    又一款在线版Aria2 WebUI加速下载工具,可以在线Aria2加速下载,再也不用下载软件版了。记得使用前需要修改Aria2 RPC 主机和端口配置才可以正常使用。在线Aria2工具截图...

    在线工具 218 3年前
  • 最新可用Aria2多线程下载工具DOS版
    最新可用Aria2多线程下载工具DOS版

    最新可用Aria2多线程下载工具DOS版,2021年3月7日测试可正常加速使用,配合直连工具,10M秒下载百度云盘资源。注意下载后的文件需要修改下后缀名,下载前的后缀是什么就改成什么。测试360会报毒,我的站长...

    开发软件 113 3年前
  • Aria2在线下载工具网页版
    Aria2在线下载工具网页版

    Aria2在线下载工具网页版,无需下载Aria2就可以在线使用Aria2加速下载服务。Aria2 跟 IDM 类似,不仅可以多线程下载,还可以通过多来源进行下载,简单的说就是从多个镜像服务器同时下载一个文件,Aria2 还...

    在线工具 1330 3年前
  • 基于Aria2批量下载API接口源码

    import requestsimport json class Aria2Download: def __init__(self): self.api = "http://localhost:6800/jsonrpc" # 消息id,aria2会原样返回这个id,可以自动生成也可以用其他唯一标识 self.id = "QXJpYU5nXzE2NzUxMzUwM...

    python教程 4 9个月前
  • Aria2的API接口进行批量下载Python源码

    import requestsimport json class Aria2Download: def __init__(self): self.api = "http://localhost:6800/jsonrpc" # 消息id,aria2会原样返回这个id,可以自动生成也可以用其他唯一标识 self.id = "QXJpYU5nXzE2NzUxMzUwM...

    python教程 24 7个月前
  • 基于Aria2批量下载API接口源码

    import requestsimport json class Aria2Download: def __init__(self): self.api = "http://localhost:6800/jsonrpc" # 消息id,aria2会原样返回这个id,可以自动生成也可以用其他唯一标识 self.id = "QXJpYU5nXzE2NzUxMzUwM...

    python教程 4 9个月前
  • 酷狗音乐歌单批量下载器
    酷狗音乐歌单批量下载器

    将自己需要下载的歌放进一个列表->分享列表->选择qq空间分享->复制qq空间上的分享的酷狗链接将链接填入软件,点击获取歌单开始下载即可。...

    软件分享 358 4年前
  • 吾爱分享酷狗音乐批量下载软件
    吾爱分享酷狗音乐批量下载软件

    吾爱分享酷狗音乐批量下载软件,本音乐下载软件为歌单批量下载,所以在下之前需要把歌曲收藏进歌单,然后分享才能下载。酷狗音乐下载使用方法一、将自己需要下载的歌放进一个列表。分享列表。选择qq空...

    软件分享 234 4年前
  • python无损音乐批量下载器
    python无损音乐批量下载器

    python框架开发,批量下载高品质与无损音乐,支持收费音乐下载。打开python音乐下载软件,搜索音乐就会出现音乐列表,支持试听,也可以选择直接下载到本地。...

    软件分享 317 4年前
  • 付费音乐无损批量下载
    付费音乐无损批量下载

    好久没用QQ音乐了,发现不管下任载何音乐都需要开会员,开会员的钱都够我搬2个小时的砖了。又加上疫情期间闲得无聊,就弄了这软件。只支持歌单或歌曲URL,搜索功能懒得弄了。网易和酷狗不稳定所以没弄上...

    软件分享 229 3年前