😏添加服务器部署情况下,合并github action的结果的选项

This commit is contained in:
2024-08-11 21:35:53 +08:00
parent eaea5cfdf2
commit 539550a824
8 changed files with 434 additions and 79 deletions

View File

@ -298,3 +298,53 @@ def sort_articles_by_time(data):
)
data['article_data'] = sorted_articles
return data
def marge_data_from_json_url(data, marge_json_url):
"""
从另一个 JSON 文件中获取数据并合并到原数据中。
参数:
data (dict): 包含文章信息的字典
marge_json_url (str): 包含另一个文章信息的 JSON 文件的 URL。
返回:
dict: 合并后的文章信息字典,已去重处理
"""
try:
response = requests.get(marge_json_url, headers=headers, timeout=timeout)
marge_data = response.json()
except Exception as e:
print(f"无法获取该链接:{marge_json_url}, 出现的问题为:{e}")
return data
if 'article_data' in marge_data:
print("开始合并数据,原数据共有 %d 篇文章,境外数据共有 %d 篇文章" % (len(data['article_data']), len(marge_data['article_data'])))
data['article_data'].extend(marge_data['article_data'])
data['article_data'] = list({v['link']:v for v in data['article_data']}.values())
print("合并数据完成,现在共有 %d 篇文章" % len(data['article_data']))
return data
def marge_errors_from_json_url(errors, marge_json_url):
"""
从另一个网络 JSON 文件中获取错误信息并遍历删除在errors中不存在于marge_errors中的友链信息。
参数:
errors (list): 包含错误信息的列表
marge_json_url (str): 包含另一个错误信息的 JSON 文件的 URL。
返回:
list: 合并后的错误信息列表
"""
try:
response = requests.get(marge_json_url, headers=headers, timeout=timeout)
marge_errors = response.json()
except Exception as e:
print(f"无法获取该链接:{marge_json_url}, 出现的问题为:{e}")
return errors
print("开始合并错误信息,原错误信息共有 %d 位朋友,境外错误信息共有 %d 位朋友" % (len(errors), len(marge_errors)))
for error in errors:
if error not in marge_errors:
errors.remove(error)
print("合并错误信息完成,现在共有 %d 位朋友" % len(errors))
return errors