安装和使用 ChromeDriver 的步骤

检查是否已安装:pip show selenium1.安装 Seleniumpip install selenium

2.下载 ChromeDriver

  • 前往 ChromeDriver 官方网站。
  • 下载与你 Chrome 浏览器版本匹配的 ChromeDriver。

如何确认 ChromeDriver 版本是否与 Chrome 浏览器匹配

确保 ChromeDriver 版本与 Chrome 浏览器版本相匹配,是进行网页自动化测试的重要一环。若版本不一致,可能会导致脚本执行失败或产生不可预期的结果检查 Chrome 版本开启 Chrome 浏览器。在网址列输入 chrome://settings/help,并按下 Enter。在「关于 Google Chrome」页面中,你会看到详细的 Chrome 版本资讯。检查 ChromeDriver 版本

  • 开启终端机或命令提示字元。
  • 导航到 ChromeDriver 所在的目录。这个目录通常是你在下载 ChromeDriver 时自行指定的。
  • 执行以下命令:

chromedriver --version

or

from selenium import webdriver
# 创建 WebDriver 实例(这里以 Chrome 为例)
driver = webdriver.Chrome()

# 检查 WebDriver 版本
print(f\'webdriver __version__:{webdriver.__version__}\')

# 关闭 WebDriver
driver.quit()

执行后应该可以看到输出的版本:webdriver version:4.24.0

比对版本将 Chrome 版本与 ChromeDriver 版本进行比对。一般来说,ChromeDriver 的版本号应该与 Chrome 的主版本号一致或略高。例如,Chrome 版本为 118,ChromeDriver 版本可以是 118 或更高。

3.将 ChromeDriver 添加到系统 PATH确保 ChromeDriver 可被系统识别,或者在代码中指定 ChromeDriver 的绝对路径:

driver = webdriver.Chrome(executable_path="/path/to/chromedriver")

from selenium import webdriver

# 创建 Chrome 浏览器的 WebDriver 实例
driver = webdriver.Chrome()

# 导航到指定的网址
driver.get("https://example.com")

# 获取目前页面的 HTML 内容(渲染后的源码)
print(driver.page_source)

# 关闭浏览器
driver.quit()

  • webdriver.Chrome():
    • 启动 Google Chrome 浏览器。2.driver.get("https://www.google.com.tw/webhp?hl=zh-TW&cr=countryTW"):
    • 让浏览器打开 google3.driver.page_source:
    • 获取加载和渲染后的完整 HTML 源码,这对于动态网页(需要 JavaScript 渲染的页面)非常有用。
  • driver.quit():关闭浏览器并释放资源,防止内存泄漏。
  • 使用 Selenium 自动化搜寻并撷取 Google 搜寻结果的 Python 范例进阶爬虫工具 Python-Selenium : sys 模组的主要功能进阶爬虫工具 Python-Selenium : 定位

    from time import sleep

    是 Python 中用来导入标準库模组 time 里的 sleep 函数。以下是详细的解释:time 模组time 是 Python 标準库的一部分,提供与时间相关的多种功能,例如当前时间、计时、延迟执行等。

    sleep 函数

    • 用于使程序暂停执行指定的秒数。
    • 接受一个参数(秒数),可以是整数或浮点数,用来指定程序的暂停时间。语法time.sleep(seconds)seconds: 暂停的时间,以秒为单位,可以是整数(例如 5 秒)或浮点数(例如 0.5 秒)。用法示例
  • 基本示例:延迟 5 秒
  • from time import sleep

    print("开始")
    sleep(5) # 暂停 5 秒
    print("结束")

    输出:

    开始
    (5 秒后)
    结束

  • 使用浮点数延迟
  • from time import sleep

    print("倒数开始:")
    for i in range(3, 0, -1):
    print(i)
    sleep(0.5) # 暂停 0.5 秒
    print("时间到!")

    输出:

    倒数开始:
    3
    2
    1
    时间到!

    sleep常见应用场景

  • 模拟程序运行的延迟: 用于控制程序的执行速度,模拟更真实的运行环境。
  • for i in range(5):
    print(f"正在处理第 {i+1} 个任务...")
    sleep(2) # 每个任务间隔 2 秒

  • 避免爬虫被封锁: 爬虫程序中可以插入 sleep,模拟人工操作,降低请求频率。
  • import requests
    from time import sleep

    urls = ["https://example.com/page1", "https://example.com/page2"]
    for url in urls:
    response = requests.get(url)
    print(f"访问 {url} 的结果: {response.status_code}")
    sleep(2) # 每次请求后暂停 2 秒

  • 处理多线程或多进程中的同步问题: 用于等待某个操作完成后继续执行。

  • 创建动画效果: 可以与控制台输出结合,制作简单的动画。

  • import sys
    from time import sleep

    for i in range(5):
    sys.stdout.write(".")
    sys.stdout.flush()
    sleep(0.5)

    sys 是 Python 的一个内建模组,提供了一些与 Python 直译器和系统相关的功能和变量。使用 Selenium 自动化搜寻并撷取 Google 搜寻结果的 Python 范例Python 进阶爬虫工具-Selenium : sys 模组的主要功能Python 进阶爬虫工具-Selenium : 定位