mirror of
https://github.com/521xueweihan/GitHub520.git
synced 2025-09-26 12:21:23 +08:00
43 lines
1004 B
Python
43 lines
1004 B
Python
#!/usr/bin/env python
|
|
# -*- coding:utf-8 -*-
|
|
#
|
|
# Author : XueWeiHan
|
|
# E-mail : 595666367@qq.com
|
|
# Date : 2025-01-16 15:27
|
|
# Desc : GitHub Action 运行的脚本
|
|
import json
|
|
from typing import Any, Optional
|
|
|
|
from retry import retry
|
|
from requests_html import HTMLSession
|
|
|
|
from common import write_hosts_content
|
|
|
|
|
|
@retry(tries=3)
|
|
def get_json(session: Any) -> Optional[list]:
|
|
url = 'https://raw.hellogithub.com/hosts.json'
|
|
try:
|
|
rs = session.get(url)
|
|
data = json.loads(rs.text)
|
|
return data
|
|
except Exception as ex:
|
|
print(f"get: {url}, error: {ex}")
|
|
raise Exception
|
|
|
|
|
|
def main() -> None:
|
|
print('Start script.')
|
|
session = HTMLSession()
|
|
content = ""
|
|
content_list = get_json(session)
|
|
for item in content_list:
|
|
content += item[0].ljust(30) + item[1] + "\n"
|
|
hosts_content = write_hosts_content(content, content_list)
|
|
print(hosts_content)
|
|
print('End script.')
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|