下载好Chrome驱动,如果访问不了外网,可以[从这里下载]( 内容详情 -GiaoLink),有各种新老版本及浏览器,有win\mac\linux适配的包以及无头模式的包
使用python执行下列文件内容
from selenium.webdriver.common.by import Byfrom selenium.webdriver.common.keys import Keysimport time# 初始化浏览器驱动(Chrome)# 如果驱动已在环境变量中,可简化为:driver = webdriver.Chrome()# 关于如何设置环境变量,请自行百度# path/to/chromedriver改成你的chrome驱动包的路径# 比如 driver = webdriver.Chrome(executable_path=r'C://chromedriver')driver = webdriver.Chrome(executable_path='path/to/chromedriver')try: # 打开网页 driver.get("https://www.baidu.com") # 最大化窗口 driver.maximize_window() # 查找搜索框并输入内容 search_box = driver.find_element(By.ID, "kw") search_box.send_keys("Selenium") # 模拟按下回车键 search_box.send_keys(Keys.RETURN) # 等待3秒,让页面加载完成 time.sleep(3) # 获取搜索结果标题并打印 results = driver.find_elements(By.CSS_SELECTOR, ".result h3 a") for i, result in enumerate(results[:5]): # 只打印前5条结果 print(f"{i+1}. {result.text}") # 截图保存 driver.save_screenshot("search_results.png")finally: # 关闭浏览器 driver.quit()使用命令行(cmd)启动浏览器调试模式
"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir="C:\selenium_chrome_data" # macOS/Linux 示例 /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir="/tmp/selenium_chrome_data"
2.python执行下列代码,其中9222就是一步里的--remote-debugging-port=9222需保持一致
```from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
# 配置 Chrome 选项
chrome_options = Options()
# 连接到已开启调试模式的浏览器
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
# 初始化驱动,连接到已打开的浏览器
driver = webdriver.Chrome(options=chrome_options)
try:
# 现在可以控制已打开的浏览器了
print("成功接管浏览器,当前页面标题:", driver.title)
# 示例操作:打开一个新网页
driver.get("https://www.baidu.com")
time.sleep(2)
# 在已打开的浏览器中执行其他操作
if "百度" in driver.title:
search_box = driver.find_element("id", "kw")
search_box.send_keys("Selenium 接管浏览器")
search_box.submit()
time.sleep(3)
finally:
# 注意:这里使用close()而不是quit(),避免关闭整个浏览器
# driver.close() # 关闭当前标签页
pass # 保持浏览器打开
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70046615/viewspace-3093936/ ,如需转载,请注明出处,否则将追究法律责任。