【Python】selenium爬虫常见用法和配置,以及常见错误和解决方法

【Python】selenium爬虫常见用法和配置,以及常见错误和解决方法

码农世界 2024-06-04 前端 94 次浏览 0个评论

欢迎来到《小5讲堂》

这是《Python》系列文章,每篇文章将以博主理解的角度展开讲解。

温馨提示:博主能力有限,理解水平有限,若有不对之处望指正!

目录

  • 前言
  • 无执行文件
    • 代码
    • 报错信息
    • 错误路径
    • 手动下载
    • 自动下载
    • 选项配置
    • Chrome入参
    • Selenium介绍
    • 文章推荐

      前言

      有时候我们需要爬取一些数据进行分析和测试,

      对于Python而言,selenium插件是爬虫最佳选择,

      本篇文章将简单列一些常见错误和解决方法。

      温馨提示,合理使用爬虫,任何技术都有利有弊,适当就好。

      无执行文件

      代码

      import time
      from selenium import webdriver
      url = 'https://blog.csdn.net/gg_61024956/article/details/138566685?spm=1001.2014.3001.5501'
      driver = webdriver.Edge()
      driver.get(url)
      time.sleep(2)
      comment_button = driver.find_element(by=By.ID,value='comment_content')
      print(comment_button.text)
      

      报错信息

      Message: ‘chromedriver’ executable needs to be in PATH. Pleasesee https://chromedriver.chromium.org/home

      消息:“chromedriver”可执行文件需要在PATH中。Pleasesehttps://chromedriver.chromium.org/home

      错误路径

      很多小伙伴会以为是这个路径,发现是可以运行的,可以自动打开浏览器,但并不能控制浏览器

      手动下载

      手动下载ChromeDriver(建议使用自动下载模式,简单方便省事)

      可以手动下载ChromeDriver并将其放置在一个你容易访问的地方,比如你的项目文件夹中。

      ChromeDriver官方地址:https://chromedriver.chromium.org/downloads

      自动下载

      自动下载ChromeDriver,自动下载并安装与当前系统中已安装的 Chrome 浏览器版本相匹配的 ChromeDriver。这样做的好处是,你无需手动去下载和管理 ChromeDriver 的版本,而是让

      webdriver_manager 库来处理这个任务,确保你使用的 ChromeDriver 版本与 Chrome 浏览器版本兼容。

      先安装,pip install webdriver_manager

      from webdriver_manager.chrome import ChromeDriverManager
      driver = webdriver.Chrome(ChromeDriverManager().install())
      

      选项配置

      webdriver.chrome.options() 是用于配置 Chrome 浏览器的选项的类。

      它允许在启动 Chrome 浏览器时配置各种选项,比如设置浏览器窗口大小、启用或禁用 JavaScript、设置代理等等。

      在 Python 中,可以使用 webdriver.Chrome() 类来创建一个 Chrome 浏览器的实例,并通过 options 参数传递 webdriver.chrome.options() 的实例来配置 Chrome 浏览器的选项。

      以下是一个示例代码:

      from selenium import webdriver
      # 创建 ChromeOptions 实例
      chrome_options = webdriver.ChromeOptions()
      # 设置选项
      chrome_options.add_argument('--headless')  # 无头模式,不打开浏览器界面
      chrome_options.add_argument('--disable-gpu')  # 禁用 GPU 加速,防止出现一些问题
      chrome_options.add_argument('--window-size=1920,1080')  # 设置浏览器窗口大小
      # 创建 Chrome 浏览器实例,并传入选项
      driver = webdriver.Chrome(options=chrome_options)
      # 使用浏览器实例进行后续操作
      driver.get('https://www.example.com')
      
      • 报错一

        module ‘selenium.webdriver’ has no attribute ‘chromeOptions’

        很显然这个是小写的问题chromeOptions这个应该是大写ChromeOptions。

        并且由于复制代码原因,0ption,细心的会发现,第一个是数字0而不是字母O

        • 报错二

          expected str, bytes or os.PathLike object, not Options

          driver = webdriver.Chrome(executable_path=ChromeDriverManager().install(),options=options)

          Chrome入参

          executable_path=默认的ChromeDriver驱动路径

          ChromeDriverManager().install(),安装路径

          C:\Users\自己电脑名.wdm\drivers\chromedriver\win64\124.0.6367.155\chromedriver-win32/chromedriver.exe

          Selenium介绍

          Selenium 是一个用于自动化网页浏览器操作的工具,它提供了一组工具和库,可以用多种编程语言(如Python、Java、JavaScript等)来控制浏览器进行自动化测试、网页截图、网页数据抓取等任务。

          在 Python 中,你可以使用 Selenium WebDriver 来控制浏览器。WebDriver 是一个用于自动化 web 浏览器的工具,它提供了一系列的 API,允许你通过编程来模拟用户在浏览器中的各种操作,比如点击链接、填写表单、提交数据等。

          下面是一个简单的示例,演示了如何使用 Selenium WebDriver 在 Python 中打开一个网页:

          from selenium import webdriver
          # 创建一个 WebDriver 对象,这里使用 Chrome 浏览器
          driver = webdriver.Chrome()
          # 打开网页
          driver.get("https://www.example.com")
          # 获取页面标题
          print("Page title is:", driver.title)
          # 关闭浏览器
          driver.quit()
          

          文章推荐

          【Python】selenium爬虫常见用法和配置,以及常见错误和解决方法

          【Python】尝试使用一个不可哈希的数据类型作为哈希表的键,错误提示builtins.TypeError,unhashable type

          【Python】AES加解密代码,文章还有加密串等你来解密,等你来挑战

          【Python】简单使用C/C++和Python嵌套for循环生成一个小爱心

          【Python】Python3 使用selenium模块实现简单爬虫系列一

          【Python】Python基础学习之python版本对应MySQL-python版本查看

          【Python】Python基础学习之python版本对应pip版本查看

          总结:温故而知新,不同阶段重温知识点,会有不一样的认识和理解,博主将巩固一遍知识点,并以实践方式和大家分享,若能有所帮助和收获,这将是博主最大的创作动力和荣幸。也期待认识更多优秀新老博主。

转载请注明来自码农世界,本文标题:《【Python】selenium爬虫常见用法和配置,以及常见错误和解决方法》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,94人围观)参与讨论

还没有评论,来说两句吧...

Top