mirror of
https://github.com/YuCat-OVO/BaiduNetdisk-Docker
synced 2025-05-10 20:10:04 +08:00
commit
6d20ce4fbe
@ -5,6 +5,7 @@ on:
|
|||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- "main"
|
- "main"
|
||||||
|
- "info"
|
||||||
paths-ignore:
|
paths-ignore:
|
||||||
- '.github/**'
|
- '.github/**'
|
||||||
- 'docs/**'
|
- 'docs/**'
|
||||||
@ -22,7 +23,7 @@ jobs:
|
|||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@master
|
uses: actions/checkout@master
|
||||||
|
|
||||||
- name: Set Vars
|
- name: Set variables
|
||||||
id: set-vars
|
id: set-vars
|
||||||
run: |
|
run: |
|
||||||
VERSION="1.0.0"
|
VERSION="1.0.0"
|
||||||
@ -53,7 +54,7 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
- name: Login to Github
|
- name: Login to GHCR
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
with:
|
with:
|
||||||
registry: ${{ env.REGISTRY }}
|
registry: ${{ env.REGISTRY }}
|
||||||
40
.github/workflows/version.yml
vendored
Normal file
40
.github/workflows/version.yml
vendored
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
name: Get BaiduNetdisk Version
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
schedule:
|
||||||
|
- cron: "0 3 * * 0"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
get-version:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Set variables
|
||||||
|
id: set-vars
|
||||||
|
run: |
|
||||||
|
RELEASE_NAME="Released on $(date +%Y%m%d%H%M)"
|
||||||
|
|
||||||
|
echo "RELEASE_NAME=${RELEASE_NAME}" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
|
- name: Set up Python
|
||||||
|
uses: actions/setup-python@v5
|
||||||
|
|
||||||
|
- name: Run Script
|
||||||
|
run: |
|
||||||
|
pip install -r requirements.txt
|
||||||
|
python get_version.py
|
||||||
|
|
||||||
|
- name: Git push assets to "main" branch
|
||||||
|
run: |
|
||||||
|
if ! ([ -f "info.json" ] && [ -f "url.json" ]); then exit 1; else mkdir info; mv {info,url}.json info; cd info; fi
|
||||||
|
git init
|
||||||
|
git config --local user.name "github-actions[bot]"
|
||||||
|
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||||
|
git checkout -b info
|
||||||
|
git add .
|
||||||
|
git commit -m "${{ steps.set-vars.outputs.RELEASE_NAME }}"
|
||||||
|
git remote add origin "https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}"
|
||||||
|
git push -f -u origin info
|
||||||
@ -1,7 +1,8 @@
|
|||||||
import requests
|
|
||||||
import re
|
|
||||||
import json
|
import json
|
||||||
|
import re
|
||||||
import time
|
import time
|
||||||
|
|
||||||
|
import requests
|
||||||
from lxml import etree
|
from lxml import etree
|
||||||
|
|
||||||
GLOBAL_HEADER = {
|
GLOBAL_HEADER = {
|
||||||
@ -16,7 +17,7 @@ max_version = [4, 20, 0]
|
|||||||
GLOBAL_REQUEST_DELAY = 0.5
|
GLOBAL_REQUEST_DELAY = 0.5
|
||||||
|
|
||||||
|
|
||||||
def get_js_url():
|
def get_js_url() -> str:
|
||||||
"""请求百度网盘下载页,获取存在下载链接的js文件"""
|
"""请求百度网盘下载页,获取存在下载链接的js文件"""
|
||||||
r = requests.get(
|
r = requests.get(
|
||||||
"https://pan.baidu.com/download",
|
"https://pan.baidu.com/download",
|
||||||
@ -36,6 +37,7 @@ def get_js_url():
|
|||||||
def append_json(json_file_name: str, add):
|
def append_json(json_file_name: str, add):
|
||||||
"""为Json添加并且去重"""
|
"""为Json添加并且去重"""
|
||||||
file = None
|
file = None
|
||||||
|
try:
|
||||||
with open(json_file_name, "r") as f:
|
with open(json_file_name, "r") as f:
|
||||||
file = json.load(f)
|
file = json.load(f)
|
||||||
# print("file=", file)
|
# print("file=", file)
|
||||||
@ -45,6 +47,9 @@ def append_json(json_file_name: str, add):
|
|||||||
if i not in u_file:
|
if i not in u_file:
|
||||||
u_file.append(i)
|
u_file.append(i)
|
||||||
|
|
||||||
|
except FileNotFoundError:
|
||||||
|
file = json.loads("[]")
|
||||||
|
|
||||||
u_file.append(add)
|
u_file.append(add)
|
||||||
|
|
||||||
# print("ufile=", u_file)
|
# print("ufile=", u_file)
|
||||||
@ -54,10 +59,13 @@ def append_json(json_file_name: str, add):
|
|||||||
return
|
return
|
||||||
|
|
||||||
|
|
||||||
def parse_url_from_json():
|
def parse_url_from_json() -> list:
|
||||||
l = ""
|
l = ""
|
||||||
|
try:
|
||||||
with open("url.json", "r") as f:
|
with open("url.json", "r") as f:
|
||||||
l = json.load(f)
|
l = json.load(f)
|
||||||
|
except FileNotFoundError:
|
||||||
|
l = []
|
||||||
return l
|
return l
|
||||||
|
|
||||||
|
|
||||||
@ -87,7 +95,6 @@ def parse_url_from_js():
|
|||||||
|
|
||||||
with open("url.json", "w") as f:
|
with open("url.json", "w") as f:
|
||||||
f.write(json.dumps(u_url, sort_keys=True, indent=4))
|
f.write(json.dumps(u_url, sort_keys=True, indent=4))
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|
||||||
@ -114,23 +121,28 @@ def make_info_json(urls: list):
|
|||||||
|
|
||||||
def make_url_temple():
|
def make_url_temple():
|
||||||
l = ""
|
l = ""
|
||||||
|
url_temple = ""
|
||||||
|
try:
|
||||||
with open("url.json", "r") as f:
|
with open("url.json", "r") as f:
|
||||||
l = json.load(f)
|
l = json.load(f)
|
||||||
url = ""
|
|
||||||
for i in l:
|
for i in l:
|
||||||
if re.search("amd64", i) != None and re.search("deb", i) != None:
|
if re.search("amd64", i) != None and re.search("deb", i) != None:
|
||||||
url = i
|
url_temple = re.sub("amd64", "arm64", i)
|
||||||
|
url_temple = re.sub(
|
||||||
|
"(?<=[_/])((?:[0-9]{1,2}(?:\\.)?){1,3})(?=[_/])", "{0}", url_temple
|
||||||
|
)
|
||||||
break
|
break
|
||||||
# print(url)
|
# print(url_temple)
|
||||||
url = re.sub("amd64", "arm64", url)
|
except FileNotFoundError:
|
||||||
url = re.sub("(?<=[_/])((?:[0-9]{1,2}(?:\\.)?){1,3})(?=[_/])", "{0}", url)
|
url_temple = "https://issuepcdn.baidupcs.com/issue/netdisk/LinuxGuanjia/{0}/baidunetdisk_{0}_arm64.deb"
|
||||||
# print(url)
|
# print(url_temple)
|
||||||
return url
|
return url_temple
|
||||||
|
|
||||||
|
|
||||||
def check_version(version):
|
def check_version(version):
|
||||||
"""检测指定版本号是否可用"""
|
"""检测指定版本号是否可用"""
|
||||||
url = make_url_temple().format(".".join(str(v) for v in version))
|
url = make_url_temple().format(".".join(str(v) for v in version))
|
||||||
|
# url = "https://httpbin.org/status/200"
|
||||||
print("Getting {0}".format(url))
|
print("Getting {0}".format(url))
|
||||||
response = requests.get(
|
response = requests.get(
|
||||||
url,
|
url,
|
||||||
|
|||||||
20
info.json
20
info.json
@ -1,20 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"arch": "x86_64",
|
|
||||||
"pak": "rpm",
|
|
||||||
"url": "https://issuepcdn.baidupcs.com/issue/netdisk/LinuxGuanjia/4.11.5/baidunetdisk-4.11.5.x86_64.rpm",
|
|
||||||
"version": "4.11.5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"arch": "amd64",
|
|
||||||
"pak": "deb",
|
|
||||||
"url": "https://issuepcdn.baidupcs.com/issue/netdisk/LinuxGuanjia/4.11.5/baidunetdisk_4.11.5_amd64.deb",
|
|
||||||
"version": "4.11.5"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"arch": "arm64",
|
|
||||||
"pak": "deb",
|
|
||||||
"url": "https://issuepcdn.baidupcs.com/issue/netdisk/LinuxGuanjia/4.17.7/baidunetdisk_4.17.7_arm64.deb",
|
|
||||||
"version": "4.17.7"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
2
requirements.txt
Normal file
2
requirements.txt
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
lxml==5.1.0
|
||||||
|
requests==2.31.0
|
||||||
9
url.json
9
url.json
@ -1,9 +0,0 @@
|
|||||||
[
|
|
||||||
"https://issuepcdn.baidupcs.com/issue/netdisk/yunguanjia/BaiduNetdisk_7.19.0.18.exe",
|
|
||||||
"https://issuepcdn.baidupcs.com/issue/netdisk/yunguanjia/BaiduNetdisk_6.9.10.1.exe",
|
|
||||||
"https://issuepcdn.baidupcs.com/issue/netdisk/MACguanjia/BaiduNetdisk_mac_4.11.0.dmg",
|
|
||||||
"https://issuepcdn.baidupcs.com/issue/netdisk/MACguanjia/BaiduNetdisk_mac_4.11.0_arm64.dmg",
|
|
||||||
"https://issuepcdn.baidupcs.com/issue/netdisk/LinuxGuanjia/4.11.5/baidunetdisk-4.11.5.x86_64.rpm",
|
|
||||||
"https://issuepcdn.baidupcs.com/issue/netdisk/LinuxGuanjia/4.11.5/baidunetdisk_4.11.5_amd64.deb",
|
|
||||||
"https://issuepcdn.baidupcs.com/issue/netdisk/LinuxGuanjia/4.17.7/baidunetdisk_4.17.7_arm64.deb"
|
|
||||||
]
|
|
||||||
Loading…
Reference in New Issue
Block a user