当前位置: 首页 > article >正文

selenium自动搭建

 

导入模块:

    pip install webdriver_manager

    pip install Selenium

webdriver_manager是 Python 中的一个库,用于管理 Web 驱动程序。它的作用是自动下载和设置不同浏览器(如 Chrome、Firefox、Edge 等)的 Web 驱动程序,以便在自动化测试中使用这些浏览器。

'''

 

import os

import shutil

from selenium import webdriver

from selenium.webdriver.chrome.service import Service

from webdriver_manager.chrome import ChromeDriverManager

from webdriver_manager.firefox import GeckoDriverManager

from webdriver_manager.microsoft import EdgeChromiumDriverManager

 

def download_chromedriver():

    '''下载谷歌浏览器驱动'''

    folder_path = r'.\webdriver' # 需要存放驱动文件的路径

    download_driver_path = ChromeDriverManager().install() # 使用ChromeDriverManager安装ChromeDriver,并获取驱动程序的路径

    shutil.copy(download_driver_path, folder_path) # 复制文件到目标位置

    print("自动安装driver的位置在:", download_driver_path)

 

    # file_path = os.path.join(folder_path, 'chromedriver.exe') # 路径拼接

    # driver = webdriver.Chrome(service=Service(file_path)) # 创建Chrome WebDriver,并指定驱动路径

    # driver.get("https://www.baidu.com") # 打开百度网页

 

def download_firfoxdriver():

    '''下载火狐浏览器驱动'''

    folder_path = r'.\webdriver' # 需要存放驱动文件的路径

    download_driver_path = GeckoDriverManager().install() #下载FirefoxDriver

    shutil.copy(download_driver_path, folder_path) # 复制文件到目标位置

    print("自动安装driver的位置在:", download_driver_path)

 

    file_path = os.path.join(folder_path, 'geckodriver.exe') # 路径拼接

    driver = webdriver.Firefox(file_path)

    driver.get('https://www.baidu.com')

 

def download_edgedriver():

    '''下载Edge浏览器驱动'''

    folder_path = r'.\webdriver' # 需要存放驱动文件的路径

    download_driver_path = EdgeChromiumDriverManager().install()

    shutil.copy(download_driver_path, folder_path) # 复制文件到目标位置

    print(download_driver_path)

 

    # file_path = os.path.join(folder_path, 'msedgedriver.exe') # 路径拼接

    # driver = webdriver.Edge(file_path)

    # driver.get("https://www.baidu.com")

 

 

# download_chromedriver()

# download_firfoxdriver()

# download_edgedriver()

 


http://www.kler.cn/a/379019.html

相关文章:

  • Java复习35(PTA)
  • 《JVM第4课》程序计数器
  • 3105. 最长的严格递增或递减子数组
  • 支持 Mermaid 语言预览,用通义灵码画流程图
  • vue3中使用vue-diff工具来比较数据差异
  • IP系列之bscan讨论
  • 数字化装配助力柔性制造与快速换型,驱动效率飞跃
  • chrome编辑替换js文件的图文教程
  • STL--哈希
  • BeanDefinition体系架构(待...)
  • 大数据挖掘和数据挖掘有什么不一样?
  • (C#面向初学者的 .NET 的生成 AI) 第 2 部分-什么是 AI 和 ML?
  • Nginx 实现动态封禁IP,详细教程来了
  • Linux特种文件系统--tmpfs文件系统
  • yarn : 无法加载文件,未对文件 进行数字签名。无法在当前系统上运行该脚本。
  • [Android]从FLAG_SECURE禁止截屏看surface
  • 雷电模拟器ls内部操作adb官方方法
  • VScode + PlatformIO 了解
  • WMV怎么转MP4?五个简单好用的视频格式转换方法!
  • Faces in Things数据集: 由麻省理工学院、微软等联合发布,探索人类视觉错觉的新里程碑
  • 每日OJ题_牛客_最长上升子序列(二)_贪心+二分_C++_Java
  • 做一个能适配「手机」的网站需要注意什么
  • 匹配——rabin_karp是怎么滚动的?
  • 多波束T50P和SES2000 Medium100安装记录(2024年10月)
  • Android 斗鱼面经
  • flutter 打包