Pages

Sunday, 4 February 2024

Gopeed-全平台开源高速下载器 支持(HTTP、BitTorrent、Magnet)协议


Gopeed(全称 Go Speed),是一款由Golang+Flutter开发的高速下载器,开源、轻量、原生,支持(HTTP、BitTorrent、Magnet 等)协议下载,并且支持全平台使用,底层使用golang协程并发下载,速度非常快,界面美观,遵循Material Design规范。

官网:https://gopeed.com/zh-CN

GitHub地址:https://github.com/GopeedLab/gopeed

------------------

A modern download manager that supports all platforms. Built with Golang and Flutter.

gopeed.com

ko-fi

English | 中文 | 日本語 | 正體中文 | Tiếng Việt

Introduction

Gopeed (full name Go Speed), a high-speed downloader developed by Golang + Flutter, supports (HTTP, BitTorrent, Magnet) protocol, and supports all platforms. In addition to basic download functions, Gopeed is also a highly customizable downloader that supports implementing more features through integration with APIs or installation and development of extensions.

Visit ✈ Official Website | 📖 Official Docs

Download

Platform Package Type Download Link
Windows EXE Installer Link
Portable ZIP Link
MacOS DMG Installer Link
Linux Flathub Link
SNAP Link
DEB Link
AppImage Link
Android APK Link
iOS IPA Link
Web
Link
Docker
Link

More about installation, please refer to Installation

Command tool

use go install:

go install github.com/GopeedLab/gopeed/cmd/gopeed@latest

Browser Extension

Gopeed also provides a browser extension to take over browser downloads, supporting browsers such as Chrome, Edge, Firefox, etc., please refer to: https://github.com/GopeedLab/browser-extension

Development

This project is divided into two parts, the front end uses flutter, the back end uses Golang, and the two sides communicate through the http protocol. On the unix system, unix socket is used, and on the windows system, tcp protocol is used.

The front code is located in the ui/flutter directory.

Environment

  1. Golang 1.21+
  2. Flutter 3.16+

Clone

git clone git@github.com:GopeedLab/gopeed

Contributing

Please refer to CONTRIBUTING.md

Build

Desktop

First, you need to configure the environment according to the official Flutter desktop website documention, then you will need to ensure the cgo environment is set up accordingly. For detailed instructions on setting up the cgo environment, please refer to relevant resources available online.

command:

  • windows
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/windows/libgopeed.dll github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build windows
  • macos
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/macos/Frameworks/libgopeed.dylib github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build macos
  • linux
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/linux/bundle/lib/libgopeed.so github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build linux

Mobile

Same as before, you also need to prepare the cgo environment, and then install gomobile:

go install golang.org/x/mobile/cmd/gomobile@latest
go get golang.org/x/mobile/bind
gomobile init

command:

  • android
gomobile bind -tags nosqlite -ldflags="-w -s" -o ui/flutter/android/app/libs/libgopeed.aar -target=android -androidapi 19 -javapkg="com.gopeed" github.com/GopeedLab/gopeed/bind/mobile
cd ui/flutter
flutter build apk
  • ios
gomobile bind -tags nosqlite -ldflags="-w -s" -o ui/flutter/ios/Frameworks/Libgopeed.xcframework -target=ios github.com/GopeedLab/gopeed/bind/mobile
cd ui/flutter
flutter build ios --no-codesign

Web

command:

cd ui/flutter
flutter build web
cd ../../
rm -rf cmd/web/dist
cp -r ui/flutter/build/web cmd/web/dist
go build -tags nosqlite,web -ldflags="-s -w" -o bin/ github.com/GopeedLab/gopeed/cmd/web

from https://github.com/GopeedLab/gopeed

https://github.com/GopeedLab/gopeed/releases/download/v1.5.7/Gopeed-v1.5.7-windows-amd64-portable.zip

----------------

Gopeed,支持多线程支持BT下载的高速下载器

下载工具,一个老生常谈的话题,相关的工具可谓多如牛毛,按照不同的协议,目前下载工具主要是HTTP、FTP和P2P,例如举世闻名的多线程下载工具IDM,备受大家的欢迎,BT下载国内主要是迅雷,国外则是比特彗星、qBittorrent之前已经给大家推荐过诸多工具。

Gopeed,一款在Github上开源的轻量级高速下载工具,基于Golang + Flutter开发,它界面美观,支持(HTTP、BitTorrent、Magnet 等)协议下载,支持多线程高速下载,多平台APP兼容,简单好用。

主要特性:

    支持HTTP & HTTPS 多协程下载

    支持Torrent & Magnet 下载

    每日自动更新 tracker 列表

    支持暗黑主题

    全平台支持

首先,Gopeed界面简洁美观,支持明暗两种主题,与我们之前介绍过的max软件一样,简单的左右布局。


1,多线程高速下载

大家知道HTTP/HTTPS/FTP是最基本最常见的下载协议,Gopeed支持多线程下载,下载速度非常快,体验上几乎与IDM不相伯仲。

当然网络下载由多方面因素共同决定,通常你的下载速度取决于其中最慢的那一环。


2,支持BitTorrent、Magnet下载

Gopeed支持磁力、BT协议下载,它与大家熟知的诸如qBittorrent等客户端在下载上体验基本一样,下载速度一方面取决于你的网络环境,另一方面就是资源的热度。

当然,这意味着它的下载是不受限制的,不受版权、xx等限制。

BT下载在国内由于特殊的网络环境,本身就是“先天不足”,体验相当差,除了使用代理之外,可以通过设置Tracker来改善,Gopeed内置了一个Tracker订阅,可以自定义添加源,并且可以每日自动更新。

Gopeed内置的订阅链接是发布在Github上,可能无法正常访问,阿刚在前年推荐一款BT下载工具时,有整理过一个tracker列表,大家可以添加一下。

    精选列表:(85 个)

    https://trackerslist.com/best.txt

    完整列表:(161 个)

    https://trackerslist.com/all.txt

    HTTP(S)列表:(66 个)

    https://trackerslist.com/http.txt

在设置好Tracker之后,BT的下载速度还是不错的,起码有它该有的速度。

3,多平台支持

Gopeed支持windows、macos、linux、android、ios、web、甚至支持在docker中安装,可以说是真正的全平台了。

4,自定义扩展

Gopeed拥有扩展系统,简言之,一个插件系统,你可以安装或者根据开发文档开发各种插件以扩展功能。

目前开发者给了两个扩展:

    油管下载:gopeed-extension-youtube

 (https://github.com/monkeyWie/gopeed-extension-youtube)

    百度网盘下载:gopeed-extension-baiduwp 

(https://github.com/monkeyWie/gopeed-extension-baiduwp)

    推特下载:gopeed-extension-twitter

Gopeed自定义扩展

下面主要是说下前两个插件。

首先,在Gopeed切换至扩展页面,我们只需要粘贴想安装插件的项目地址,即可安装成功。


Gopeed插件中心

由于插件主要是在Github上发布,并且油管下载的插件必须要设置代理才可以正常下载,这里用的Clash代理工具。Gopeed中代理设置也非常简单:

1,Clash设置允许局域网链接

2,在Gopeed的设置界面中输入Clash中显示的以太网IP地址(其实就是本机的IPv4地址)和Clash上的端口即可.

Gopeed自定义扩展

一,下载油管视频插件

先说下这个油管的插件,使用很简单,把油管的播放地址复制粘贴进去,然后它会自动解析视频,阿刚实测是可以解析到高品质的视频的,解析后下载也是飞快。

Gopeed自定义扩展

确实非常的方便,前提是你得有代理工具。


二,百度网盘解析

百度网盘解析,让Gopeed直接解析下载百度网盘的链接。方法也很简单,点击网盘插件的设置按钮,需要用到百度网盘的两个值。

1,设置Refresh Token:

这里直接使用下面Alist提供的一个链接。

https://openapi.baidu.com/oauth/2.0/authorize?response_type=code&client_id=iYCeC9g08h5vuP9UqvPHKKSVrKFXGa1v&redirect_uri=https://alist.nn.ci/tool/baidu/callback&scope=basic,netdisk&qrcode=1

将链接复制到浏览器中粘贴访问,登录你的度盘账号,复制Refresh Token。

设置Refresh Token.

2,设置Cookies

通过浏览器开发者工具,按F12打开开发者工具,切换到Application(应用程序)选项卡,找到Cookies,找到https://pan.baidu.com,找到BDUSS,复制Value的值即可。

3,最后记得保存一下.

最后,有百度网盘的链接可以直接新建任务粘贴进来。

插件的主要作用是让Gopeed解析下载度盘链接,但它并不破解限速,如果你是百度网盘会员的话,下载速度相当快。

一款相当不错的高速下载工具,支持多协议,无视版权,内置的插件也相当实用。

https://github.com/GopeedLab/gopeed-extension-samples

------------------------------------------------------------------------

 支持 "百度网盘" 的免费开源下载工具:Gopeed

现在有一款类似支持插件扩展的免费开源下载工具「Gopeed」它支持主流的各种下载协议,例如:HTTP、HTTPS、Torrent、Magnet。
Gopeed介绍

据介绍「Gopeed」采用 Go + Flutter 开发,完全绿色免费,界面非常简洁,客户端方面提供了 Windows、安卓、macOS、Linux、iOS 版本,甚至还可以通过 Docker 方式部署到自己服务器上。

下载任务功能方面,支持设置连接数、设置 HTTP 的 UA、Cookie、Referer 高级功能。而 BT 方面可以单独给资源添加 Trakers 来加快资源下载速度。

扩展插件功能方面,点击获取扩展即可打开扩展功能项目,目前扩展插件只有:百度网盘、YTB、Twitter,当然如果你会开发的话也可以开发其它插件。

百度网盘扩展说明
这里的百度网盘扩展插件接口是来源百度官方,需要使用自己的百度网盘账号才能获取下载链接,另外只有百度网盘会员才能不限速下载。
✅下载自己网盘文件:

根据百度网盘扩展插件说明,需要先获取你百度网盘对应的 refresh_token 然后填入百度网盘扩展的设置页面,点击保存即可。
    refresh_token获取地址:

https://openapi.baidu.com/oauth/2.0/authorize?response_type=code&client_id=iYCeC9g08h5vuP9UqvPHKKSVrKFXGa1v&redirect_uri=https://alist.nn.ci/tool/baidu/callback&scope=basic,netdisk&qrcode=1

然后浏览器打开百度网盘,选择你需要下载资源的目录,复制浏览器地址栏中的地址添加到「Gopeed」的新建下载。

因为我是百度网盘会员,通过「Gopeed」的百度网盘扩展插件下载资源,速度居然比官方客户端还快,千兆宽带基本跑满速了。

✅下载网盘分享链接:

如果需要下载网盘分享链接资源,还需要设置百度网盘 Cookie 中的 BDUSS 值。获取方法如下:

通过浏览器开发者工具,按 F12 打开开发者工具,切换到 Application (应用程序) 选项卡,找到 Cookies,找到 https://pan.baidu.com,找到 BDUSS,复制 Value 的值即可。

接着把复制的 BDUSS 值添入百度网盘扩展设置页面,点击保存即可。打开任务页面,新建任务,创建即可解析下载。

其它功能方面

支持设置下载目录、最大下载数、创建文件使用服务器时间、BT的下载端口、内置了订阅 Tracker 地址,支持每天自动更新、支持界面主题颜色。

总结

这款「Gopeed」是非常不错的下载工具,完全免费开源、支持多平台客户端、简约轻量、支持扩展插件是一个亮点,期待会有更多的插件出现,如视频嗅探等。

    项目地址:
    https://github.com/GopeedLab/gopeed

度盘扩展:
https://github.com/monkeyWie/gopeed-extension-baiduwp

No comments:

Post a Comment