From 58995a71f4bfb0ce6cacb298a45ed10beb65cb98 Mon Sep 17 00:00:00 2001 From: bvwl <2201101122@qq.com> Date: Thu, 6 Nov 2025 10:42:02 +0800 Subject: [PATCH] 0.0.1 --- .idea/.gitignore | 5 ++++ main.py | 62 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 main.py diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..b58b603 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,5 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/main.py b/main.py new file mode 100644 index 0000000..772d0cb --- /dev/null +++ b/main.py @@ -0,0 +1,62 @@ +from re import T +from DrissionPage import Chromium + +# 发送请求告知服务器执行完成 +def send_complete(): + print('发送信息告知服务器脚本执行完成') + url = '' + + +def main(http: str): + """ + 使用给定的 http 句柄接管已打开的指纹浏览器并执行示例登录流程 + + Args: + http (str): 浏览器的 http 句柄字符串 + + Returns: + None + """ + # 启动或接管浏览器,并获取标签页对象 + print(f'使用 http 接管浏览器: {http}') + tab = Chromium(http).new_tab() + # 跳转到登录页面 + tab.get('https://gitee.com/login') + + # 定位到账号文本框,获取文本框元素 + ele = tab.ele('#user_login') + # 输入账号 + ele.input('您的账号') + # 定位到密码文本框并输入密码 + tab.ele('#user_password').input('您的密码') + # 点击登录按钮 + tab.ele('@value=登 录').click() + # while True: + # print(1) + # time.sleep(5) + + +if __name__ == '__main__': + """ + 脚本入口:支持从命令行参数或环境变量读取 http 并调用 main + + - 命令行:python project/test/log.py + - 环境变量:BROWSER_HTTP= python project/test/log.py + """ + import os + import sys + import time + + http = os.getenv('BROWSER_HTTP') or (sys.argv[1] if len(sys.argv) > 1 else None) + if not http: + print('缺少 http 参数:请通过命令行传入或设置环境变量 BROWSER_HTTP') + sys.exit(1) + + print(f'接收到 http: {http}') + try: + main(http) + print('脚本执行完成') + except Exception as e: + print(f'脚本执行异常: {e}') + sys.exit(2) +