短链生成
This commit is contained in:
@@ -4,7 +4,8 @@
|
||||
;V2
|
||||
;自带旗帜 emoji 添加逻辑,原名不包含旗帜 emoji 才添加,原名已包含旗帜 emoji 则不添加
|
||||
;需去除订阅转换链接中的参数 emoji=true/false 才能生效,参考例子:
|
||||
;https://api.v1.mk/sub?target=clash&udp=true&scv=true&config=https://goo.gs/config&url={原订阅链接}
|
||||
;https://api.dler.io/sub?target=clash&udp=true&scv=true&config=https://goo.gs/config&url={原订阅链接}
|
||||
;短链:https://goo.gs/dler&url={原订阅链接}
|
||||
|
||||
;---
|
||||
|
||||
|
||||
@@ -14,7 +14,9 @@
|
||||
|
||||
**需去除订阅转换链接中的参数 `emoji=true/false` 才能生效**,参考例子:
|
||||
|
||||
`https://api.v1.mk/sub?target=clash&udp=true&scv=true&config=https://goo.gs/config&url={原订阅链接}`
|
||||
`https://api.dler.io/sub?target=clash&udp=true&scv=true&config=https://goo.gs/config&url={原订阅链接}`
|
||||
|
||||
短链:`https://goo.gs/dler&url={原订阅链接}`
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -2,16 +2,34 @@ import os
|
||||
|
||||
import requests
|
||||
|
||||
alias = 'config'
|
||||
url = f"https://cdn.jsdelivr.net/gh/zsokami/ACL4SSR@{os.getenv('GITHUB_SHA')}/ACL4SSR_Online_Full_Mannix.ini"
|
||||
API_KEY = os.getenv('API_KEY')
|
||||
GITHUB_REPOSITORY = os.getenv('GITHUB_REPOSITORY')
|
||||
|
||||
if GITHUB_REPOSITORY == 'zsokami/ACL4SSR':
|
||||
alias = 'config'
|
||||
alias_sc = 'dler'
|
||||
else:
|
||||
repo = GITHUB_REPOSITORY.replace('/', '__')
|
||||
alias = f"gh__{repo}"
|
||||
alias_sc = f"gh__{repo}__sc"
|
||||
|
||||
ini_file_name = next(f for f in os.listdir() if f.endswith('.ini'))
|
||||
url = f"https://cdn.jsdelivr.net/gh/{GITHUB_REPOSITORY}@{os.getenv('GITHUB_SHA')}/{ini_file_name}"
|
||||
url_sc = f"https://api.dler.io/sub?target=clash&udp=true&scv=true&config={url}"
|
||||
|
||||
session = requests.Session()
|
||||
session.headers['Authorization'] = 'Bearer wMZJfKSns5lLIZ7if32owHe9w06EVAV6ZjbnCoeFs65PNN95lrwDxnKSGAMV'
|
||||
session.headers['Authorization'] = f"Bearer {API_KEY}"
|
||||
api = 'https://goo.gs/api/v1/links'
|
||||
items = session.get(api, params={'search': alias, 'by': 'alias'}).json()['data']
|
||||
for item in items:
|
||||
if item['alias'] == alias:
|
||||
|
||||
|
||||
def upsert(alias, url):
|
||||
items = session.get(api, params={'search': alias, 'by': 'alias'}).json()['data']
|
||||
item = next((item for item in items if item['alias'] == alias), None)
|
||||
if item:
|
||||
print(session.put(f"{api}/{item['id']}", data={'url': url}).ok)
|
||||
break
|
||||
else:
|
||||
print(session.post(api, data={'url': url, 'alias': alias}).ok)
|
||||
else:
|
||||
print(session.post(api, data={'url': url, 'alias': alias}).ok)
|
||||
|
||||
|
||||
upsert(alias, url)
|
||||
upsert(alias_sc, url_sc)
|
||||
|
||||
Reference in New Issue
Block a user