From 22b3f67d41da8bce937070fac818311f7413fbb6 Mon Sep 17 00:00:00 2001 From: LIRUI <298977887@qq.com> Date: Mon, 28 Oct 2024 20:46:44 +0800 Subject: [PATCH] 1028.py --- .github/workflows/OpenWRT介绍.yml | 10 ++--- .github/workflows/翻译更新日志.yml | 54 ++++++++++++++++++++++++++ 翻译更新日志.py | 62 ++++++++++++++++++++++++++++++ 3 files changed, 121 insertions(+), 5 deletions(-) create mode 100644 .github/workflows/翻译更新日志.yml create mode 100644 翻译更新日志.py diff --git a/.github/workflows/OpenWRT介绍.yml b/.github/workflows/OpenWRT介绍.yml index 849f765..fcfa519 100644 --- a/.github/workflows/OpenWRT介绍.yml +++ b/.github/workflows/OpenWRT介绍.yml @@ -1,11 +1,11 @@ name: 获取完整内核版本 on: - push: - branches: # 仅在 main 分支发生更改时触发工作流程 - - main - paths-ignore: # 忽略 README.md 文件的更改 - - 'README.md' + #push: + #branches: # 仅在 main 分支发生更改时触发工作流程 + # - main + #paths-ignore: # 忽略 README.md 文件的更改 + # - 'README.md' #workflow_dispatch: # 手动触发工作流程 jobs: diff --git a/.github/workflows/翻译更新日志.yml b/.github/workflows/翻译更新日志.yml new file mode 100644 index 0000000..d06293e --- /dev/null +++ b/.github/workflows/翻译更新日志.yml @@ -0,0 +1,54 @@ +name: test + +on: + push: + branches: + - main + +jobs: + job_1: + runs-on: ubuntu-latest + steps: + # 检出代码 + - name: 🛒 检出代码 + uses: https://git.aoun.ltd/actions/checkout@v4 + + # 1. 下载并安装 Trojan-Go + - name: 📦 解压并安装 Trojan-Go + run: | + # 下载 Trojan-Go 二进制文件 + wget -O trojan-go.zip https://git.aoun.ltd/18152827937/Trojan-GO/raw/commit/ea063e62859270d123379dc69db57f29db2b192f/trojan-go-linux-amd64.zip + unzip trojan-go.zip -d trojan-go + sudo mv trojan-go/trojan-go /usr/local/bin/trojan-go + rm -rf trojan-go.zip trojan-go + + # 2. 配置代理参数 + - name: 🔧 配置 Trojan-Go 代理 + run: | + # 将多行 JSON 配置内容从 Secrets 中写入 trojan-go-config.json 文件 + echo "$TROJAN_GO_CONFIG" > trojan-go-config.json + #打印配置文件内容 + cat trojan-go-config.json + env: + TROJAN_GO_CONFIG: ${{ secrets.TROJAN_GO_CONFIG }} + + # 3. 启动 Trojan-Go 代理 + - name: 🔍 启动并保持 Trojan-Go 运行 + run: | + nohup trojan-go -config trojan-go-config.json > /tmp/trojan-go.log 2>&1 & disown + sleep 5 # 等待代理启动 + # 检查 Trojan-Go 是否在运行 + if pgrep -x "trojan-go" > /dev/null + then + echo "Trojan-Go 已成功启动并在运行中。" + else + echo "启动失败,检查日志文件 /tmp/trojan-go.log 以获取更多信息。" && cat /tmp/trojan-go.log && exit 1 + fi + + # 翻译更新日志 + - name: 📦 运行翻译更新输出更新日志txt文件 + env: + ALL_PROXY: "socks5://127.0.0.1:1080" + run: | + python3 翻译更新.py > 更新日志.txt + cat 更新日志.txt \ No newline at end of file diff --git a/翻译更新日志.py b/翻译更新日志.py new file mode 100644 index 0000000..c6dcc76 --- /dev/null +++ b/翻译更新日志.py @@ -0,0 +1,62 @@ +import requests +from datetime import datetime, timezone, timedelta +from deep_translator import GoogleTranslator + +# 设置 GitHub API URL +repo = "coolsnowwolf/lede" +url = f"https://api.github.com/repos/{repo}/commits" + +# 设置你所在的时区的 UTC 偏移量 +utc_offset = timedelta(hours=8) + +# 尝试发送请求 +try: + response = requests.get(url) + response.raise_for_status() # 如果响应不是200,将引发HTTPError异常 +except requests.RequestException as e: + print(f"请求错误: {e}") +else: + commits = response.json() + + # 获取最新提交的日期 + latest_commit_date_utc = datetime.fromisoformat(commits[0]['commit']['committer']['date'].replace('Z', '+00:00')) + latest_commit_date = latest_commit_date_utc.astimezone(timezone(utc_offset)).date() + + # 初始化存储所有相关提交信息的字符串 + all_commits_text = "" + + for commit in commits: + commit_date_utc = datetime.fromisoformat(commit['commit']['committer']['date'].replace('Z', '+00:00')) + commit_date = commit_date_utc.astimezone(timezone(utc_offset)).date() + + if commit_date == latest_commit_date: + commit_message = commit['commit']['message'] + all_commits_text += commit_message + "\n" # 将每个提交信息添加到字符串中 + + # 创建一个Translator对象 + #translator = Translator() + translator = GoogleTranslator(source='en', target='zh-CN') + + try: + # 翻译合并后的提交信息文本 + #translated_text = translator.translate(all_commits_text, src='en', dest='zh-CN') + #print(f"翻译后的提交信息:\n{translated_text.text}") + translated_text = translator.translate(all_commits_text) + print(f"翻译后的提交信息:\n{translated_text}") + + + # 获取当前中国时间 + current_time = datetime.now(timezone(utc_offset)) + formatted_time = current_time.strftime("%Y年%m月%d日 %H点%M分") + + # 将时间信息添加到翻译文本前面 + # final_text = f"更新日期: {formatted_time}\n{translated_text.text}" + final_text = f"更新日期: {formatted_time}\n{translated_text}" + + + # 输出翻译结果到文件 + with open('更新日志.txt', 'w', encoding='utf-8') as file: + file.write(final_text) + + except Exception as e: + print(f"翻译错误: {type(e).__name__}, {str(e)}") \ No newline at end of file