Merge pull request #1 from YuCat-OVO/develop

merge Develop
This commit is contained in:
YuCat-OVO 2024-03-01 16:23:57 +08:00 committed by GitHub
commit 6d20ce4fbe
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 83 additions and 57 deletions

View File

@ -5,6 +5,7 @@ on:
push:
branches:
- "main"
- "info"
paths-ignore:
- '.github/**'
- 'docs/**'
@ -22,7 +23,7 @@ jobs:
- name: Checkout
uses: actions/checkout@master
- name: Set Vars
- name: Set variables
id: set-vars
run: |
VERSION="1.0.0"
@ -53,7 +54,7 @@ jobs:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Github
- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}

40
.github/workflows/version.yml vendored Normal file
View 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

View File

@ -1,7 +1,8 @@
import requests
import re
import json
import re
import time
import requests
from lxml import etree
GLOBAL_HEADER = {
@ -16,7 +17,7 @@ max_version = [4, 20, 0]
GLOBAL_REQUEST_DELAY = 0.5
def get_js_url():
def get_js_url() -> str:
"""请求百度网盘下载页,获取存在下载链接的js文件"""
r = requests.get(
"https://pan.baidu.com/download",
@ -36,6 +37,7 @@ def get_js_url():
def append_json(json_file_name: str, add):
"""为Json添加并且去重"""
file = None
try:
with open(json_file_name, "r") as f:
file = json.load(f)
# print("file=", file)
@ -45,6 +47,9 @@ def append_json(json_file_name: str, add):
if i not in u_file:
u_file.append(i)
except FileNotFoundError:
file = json.loads("[]")
u_file.append(add)
# print("ufile=", u_file)
@ -54,10 +59,13 @@ def append_json(json_file_name: str, add):
return
def parse_url_from_json():
def parse_url_from_json() -> list:
l = ""
try:
with open("url.json", "r") as f:
l = json.load(f)
except FileNotFoundError:
l = []
return l
@ -87,7 +95,6 @@ def parse_url_from_js():
with open("url.json", "w") as f:
f.write(json.dumps(u_url, sort_keys=True, indent=4))
return
@ -114,23 +121,28 @@ def make_info_json(urls: list):
def make_url_temple():
l = ""
url_temple = ""
try:
with open("url.json", "r") as f:
l = json.load(f)
url = ""
for i in l:
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
# print(url)
url = re.sub("amd64", "arm64", url)
url = re.sub("(?<=[_/])((?:[0-9]{1,2}(?:\\.)?){1,3})(?=[_/])", "{0}", url)
# print(url)
return url
# print(url_temple)
except FileNotFoundError:
url_temple = "https://issuepcdn.baidupcs.com/issue/netdisk/LinuxGuanjia/{0}/baidunetdisk_{0}_arm64.deb"
# print(url_temple)
return url_temple
def check_version(version):
"""检测指定版本号是否可用"""
url = make_url_temple().format(".".join(str(v) for v in version))
# url = "https://httpbin.org/status/200"
print("Getting {0}".format(url))
response = requests.get(
url,

View File

@ -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
View File

@ -0,0 +1,2 @@
lxml==5.1.0
requests==2.31.0

View File

@ -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"
]