safari2aria,用 aria2c 来替代你的 safari 默认下载 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
miniers
V2EX    分享创造

safari2aria,用 aria2c 来替代你的 safari 默认下载

  •  2
     
  •   miniers
    miniers 2017-06-12 23:24:29 +08:00 13588 次点击
    这是一个创建于 3046 天前的主题,其中的信息可能已经有所发展或是发生改变。

    safari2aria

    先放链接,欢迎 star

    GitHub - miniers/safari2aria

    暂时实现了一些基础功能:

    1. 自动拦截指定后缀文件的下载事件并通过 aria2c 来下载该文件
    2. 可配置多个 aria2c 地址
    3. 右键链接后可选择指定 aria2c 服务进行下载

    设置: image

    下载: image

    已知问题:

    1. 自动拦截功能暂时只能下载至第一个 aria2c 服务器(正在考虑如何优化)
    2. 如果 aria2c 端没有配置 ssl 证书,则 https 网站的下载请求无法发送至 aria2c

    该问题为 safari 的安全策略,暂时没有思路修复

    请在 aria2c 的配置文件中添加如下配置引入证书

    rpc-secure=true rpc-certificate=path/to/you/cert rpc-private-key=path/to/you/key 

    如果你的 aria2c 运行于 macos 下,

    则需要通过钥匙串访问程序将证书先行导入

    并在证书简介页面的最低部找到 SHA-1 指纹,填写入 aria2c 的配置文件

    rpc-secure=true rpc-certificate=01 01 01 01 01 01 01 

    ~~PS:配合 baidupan 直连脚本超级舒爽~~

    第 1 条附言    2017-06-14 08:45:08 +08:00

    版本已经升级至1.2并且添加了自动更新,有需求的请重新下载最新版,以后的更新就可以自动升级啦

    v1.2:

    1. 优化代码结构,修复包含iframe页面下载重复问题
    2. 图片下载
    3. 自动更新

    v1.1:

    1. 增加快捷键来切换默认aria2c服务 (option+shift+[123456789])
    2. 增加快捷键展示当前默认aria2c服务(option+shift+`)
    3. 设置界面可以设置默认aria2c服务
    4. 增加快捷键临时禁制拦截 (按着cmd点击链接)
    第 2 条附言    2017-06-15 08:42:19 +08:00

    v1.3 已经更新,加入了人见人爱的百度云和迅雷离线支持

    v1.3:

    1. 增加工具栏图标和快捷键(option + shift + ,),快速打开设置界面
    2. 全局拦截模式,按着 shift 会拦截所有请求,此模式非常适合百度云和迅雷离线,可以不用任何其他插件直接导入至aria2
    3. cmd可以临时禁用或启用自动拦截模式
      • 关闭自动拦截配置后可按住cmd点击链接来临时启用自动拦截模式
      • 开启自动拦截模式可以按住cmd来临时禁用自动拦截
      • 可以配合全局拦截快捷键一起使用
    4. 增加配置项来控制是否传递cookie
    5. 增加配置项控制是否拦截iframe模式的下载(主要在百度云使用)
      • 如需在百度云快捷下载,请关闭cookie选项并打开iframe拦截
    6. 增加user-agent设置项

    注意事项

    请在aria2c的配置文件中加入如下配置,用以开启百度云和迅雷离线导出时自动更改下载文件名

    content-disposition-default-utf8=true 

    迅雷离线导出:

    • 开启cookie传递选项
    • 选择需要导出的文件
    • 如当前为自动拦截模式,长按shift并点击取回本地按钮即可导出下载至默认rpc服务器
    • 如当前关闭了自动拦截默认,需长按shift+cmd并点击取回本地按钮即可导出下载至默认rpc服务器

    百度云分享页导出:

    • 关闭cookie传递选项
    • 点击下载,打开文件下载窗口
    • 如当前为自动拦截模式,长按shift并点击普通下载按钮即可导出下载至默认rpc服务器
    • 如当前关闭了自动拦截默认,需长按shift+cmd并点击普通下载按钮即可导出下载至默认rpc服务器
    28 条回复    2017-06-17 20:24:33 +08:00
    helloSwift
        1
    helloSwift  
       2017-06-12 23:32:42 +08:00 via iPhone
    能配合百度云更好了
    yipeng
        2
    yipeng  
       2017-06-12 23:32:50 +08:00
    似乎 Get 到了处 Star
    miniers
        3
    miniers  
    OP
       2017-06-12 23:52:13 +08:00 via iPhone   1
    @helloSwift 确实可以配合百度云的直连插件,会自动附带 cookie
    steveshi
        4
    steveshi  
       2017-06-13 10:52:44 +08:00
    这想法很棒啊
    qianguozheng
        5
    qianguozheng  
       2017-06-13 11:23:26 +08:00
    可以配合迅雷种子不?
    miniers
        6
    miniers  
    OP
       2017-06-13 11:36:29 +08:00
    @qianguozheng #5 暂时只支持链接
    另外已经更新 v1.1:

    1. 增加快捷键来切换默认 rpc 服务 ( option+shift+[123456789])
    2. 增加快捷键展示当前默认 rpc 服务( option+shift+`)
    3. 设置界面可以设置默认 rpc 服务
    4. 增加快捷键临时禁制拦截 (按着 cmd 点击链接)
    miniers
        7
    miniers  
    OP
       2017-06-13 11:45:48 +08:00
    @qianguozheng #5 迅雷离线导出有专门的 userscript,并不需要用到这个插件
    插件在此 ,我修改增加了多服务器的支持
    [GitHub - miniers/ThunderLixianExporter: export thunder lixian url to aria2/wget]( https://github.com/miniers/ThunderLixianExporter)
    ashfinal
        8
    ashfinal  
       2017-06-13 12:40:13 +08:00   1
    不错,一会尝试一下。
    顺便推荐个 aria2 管理前端: https://github.com/ashfinal/awesome-hammerspoon#6-aria2-gui---d
    livc
        9
    livc  
       2017-06-13 12:42:14 +08:00
    赞,先 star 了,有空试试
    wc0517
        10
    wc0517  
       2017-06-13 13:50:47 +08:00
    太棒了,等了好久,之前一直用 Chrome 的
    miniers
        11
    miniers  
    OP
       2017-06-13 16:13:18 +08:00
    1.1.2 增加了自动更新,以后就不用手动下载啦
    ashfinal
        12
    ashfinal  
       2017-06-13 20:39:52 +08:00
    感谢楼主帮助!本机 https 终于好使了!

    好像又发现俩个新问题需要确认下:
    1. 貌似只要不属于当前访问网站的内容(譬如你帖子里的图片),就无法发送到 aria2 ?
    2. https://krita.org/en/download/krita-desktop/ 这个网址点击按钮直接创建了 3*2=6 个新下载项,而实际只应该有 2 个。有 4 个下载项是完全多余的。
    miniers
        13
    miniers  
    OP
       2017-06-13 21:12:16 +08:00 via iPhone
    @ashfinal 抽空瞅瞅 测试的太少了
    ashfinal
        14
    ashfinal  
       2017-06-13 22:22:52 +08:00
    @miniers 好的!
    miniers
        15
    miniers  
    OP
       2017-06-14 00:06:12 +08:00   1
    @ashfinal #14 1.2 版已经解决这俩问题,第一个问题是原来就没处理图片的下载,第二个是这个网站嵌套了好几个 iframe,插件的逻辑也有点问题,导致启动了多个事件接收器接收了多次相同事件
    ashfinal
        16
    ashfinal  
       2017-06-14 12:51:20 +08:00
    @miniers cool!
    miniers
        17
    miniers  
    OP
       2017-06-15 08:37:39 +08:00
    1.3 更新啦!加入了两个特性,现在可以支持百度云和迅雷离线啦!
    miniers
        18
    miniers  
    OP
       2017-06-15 17:05:56 +08:00
    又又又又更新啦! 1.4 已经发布,优化了发送至 aria2 请求的思路,现在 aria2 已经不用部署证书啦,这下方便多啦!!
    witcherhope
        19
    witcherhope  
       2017-06-16 19:36:33 +08:00
    点击 google 链接会显示添加到 localhost 失败, 请问怎么解决
    miniers
        20
    miniers  
    OP
       2017-06-16 22:03:33 +08:00
    @witcherhope #19 能否提供一个链接我看看问题出在哪
    miniers
        21
    miniers  
    OP
       2017-06-16 22:06:17 +08:00
    @witcherhope #19 可以现在设置中关闭自动拦截之后试试,有可能是链接中包含了配置的自动拦截后缀名
    witcherhope
        22
    witcherhope  
       2017-06-16 22:13:02 +08:00
    @miniers 只要是 google 搜索的链接就会自动下载, 我尝试把拦截类型清空还是会下载 (所以应该不是里面包含类型) , 下载的文件是 url, 只有完全勾选关闭拦截才不会出现问题, 感觉应该是 Bug
    miniers
        23
    miniers  
    OP
       2017-06-16 22:43:15 +08:00 via iPhone
    @witcherhope 有没有升级到最新版本 1.4 试试,初期版本确实有一个快捷键引发的全局都拦截的 bug,新版这个问题已经修复了
    witcherhope
        24
    witcherhope  
       2017-06-16 23:04:55 +08:00
    @miniers 就是最新的, 除了 google 搜索的链接, 其他链接 (例如百度搜索结果) 点击没问题目前没问题
    witcherhope
        25
    witcherhope  
       2017-06-16 23:05:14 +08:00
    @miniers 不知道你那边测试有没有问题
    miniers
        26
    miniers  
    OP
       2017-06-16 23:46:29 +08:00
    @witcherhope #25 测试了一圈,没法重现这个 bug,是不是不小心或者有其他插件触发了 shift 这个按键呢? 如果按着 shift 的话,是会强行拦截所有地址栏变更并转发至 aria2 的
    实在不行的话,可以关闭自动拦截,需要下载的可以按着 cmd 点击链接
    miniers
        27
    miniers  
    OP
       2017-06-17 00:20:29 +08:00
    又又又又又更新啦,1.5 啦,下载成功可以推送啦!
    miniers
        28
    miniers  
    OP
       2017-06-17 20:24:33 +08:00
    话说不知道要加啥功能了,本来筹划加个浮窗展示当前下载列表,可是又觉得对一个插件来说优点重了,各种 web 端和原生程序都很好用
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     924 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 38ms UTC 22:00 PVG 06:00 LAX 15:00 JFK 18:00
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86