import time
from telnetlib import EC

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import os

from selenium.webdriver.common.by import By
from selenium.webdriver.support import wait

# 自动获取桌面路径
desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")

# 1. 配置Chrome路径（你的便携版浏览器）
chrome_exe_path = os.path.join(desktop_path, "chrome-win64", "chrome-win64", "chrome.exe")
chrome_options = Options()
chrome_options.binary_location = chrome_exe_path

# ===================== 核心修复：添加这4行参数，解决报错 =====================
chrome_options.add_argument("--no-sandbox")  # 关闭沙盒模式
chrome_options.add_argument("--disable-dev-shm-usage")  # 解决资源限制
chrome_options.add_argument("--disable-gpu")  # 禁用GPU加速
chrome_options.add_experimental_option('excludeSwitches', ['enable-logging'])  # 关闭冗余日志

# 2. 配置ChromeDriver路径（版本完全匹配）
driver_path = os.path.join(desktop_path, "chromedriver-win64", "chromedriver-win64", "chromedriver.exe")
service = Service(driver_path)

# 3. 启动浏览器
driver = webdriver.Chrome(service=service, options=chrome_options)

# ===================== 你的功能代码（全部正常运行） =====================
print('----------------------------')
"""第一：打开baidu.com网页，休息1s       
第二：打开hao123.com网页，休息2s
第三：后退  back
第四：刷新  refresh，休息3s
第五：窗口最大化  ，休息4s
第六 ：关闭浏览器。"""
# driver.get("https://www.baidu.com")
# time.sleep(1)
#
# driver.get("https://www.hao123.com")
# time.sleep(2)
#
# driver.back()
#
# driver.refresh()
# time.sleep(3)
#
# driver.maximize_window()
# time.sleep(4)
#
# driver.close()


try:
    # 1. 打开百度首页
    driver.get("https://www.baidu.com")
    driver.maximize_window()
    print("✅ 打开百度成功")
    time.sleep(2)

    # 2. 点击右上角【登录】按钮（你提供的ID，精准定位）
    login_btn = driver.find_element(By.ID, "s-top-loginbtn")
    login_btn.click()
    print("✅ 已点击登录按钮")
    time.sleep(3)

    # 3. 直接输入用户名（无需切换，直接填写）
    username = driver.find_element(By.ID, "TANGRAM__PSP_11__userName")
    username.clear()
    username.send_keys("你的百度账号/手机号")  # 填写你的账号
    print("✅ 已输入账号")
    time.sleep(1)

    # 4. 直接输入密码
    password = driver.find_element(By.ID, "TANGRAM__PSP_11__password")
    password.clear()
    password.send_keys("你的百度密码")  # 填写你的密码
    print("✅ 已输入密码")
    time.sleep(1)

    # ===================== 关键：不点击登录按钮，停留页面观察 =====================
    print("✅ 账号密码填写完成，页面已停留，可手动观察/操作")
    time.sleep(10)  # 停留10秒，方便你看效果

except Exception as e:
    print(f"❌ 执行出错：{e}")

finally:
    driver.quit()  # 运行结束关闭浏览器
    print("执行完成")