• python 的selenium库自动化操控浏览器最新教程


    目录

    1 pycharm中的准备

     2 浏览器引擎的准备(重要)

     3 引用浏览器引擎

     4 万事俱备开始操作了

     5 补充,查看Xpath的路径的方法


    闲来无事想来试一试python 的selenium库,来自动化操控浏览器,但是经过了一番探索发现网上99.9%的教程全是老的没有任何用处的,因为这个库已经经过了几次大更新,好多函数,类都已经不适用了!!!于是就有了这篇教程来记录一下自己学习,话不多说上教程。

    1 pycharm中的准备

    下载selenium库(任选1中种方法)

    方法1

    控制台/终端命令

    pip install selenium

    方法2

    直接根据提示安装就行,哈哈

    方法3 

    在如图位置安装selenium

     2 浏览器引擎的准备(重要)

    点击下面链接(在图片下面)到,微软官网下载应急浏览器的浏览器引擎

    注意!!!

    下载浏览器引擎一定要你自己安装的浏览器版本相匹配,否则将无法进行后续操作。

    事例:

     (我的浏览器版本为103.0.1264.77 64位,所以我就下载下面第3页中对应版本的x64压缩包)

     下载压缩包之后,将压缩包解压并放置某一个固定的位置。我放的是在我的pycharm的目录下

     3 引用浏览器引擎

     具体操作在代码中了,注意这里是绝对路径

    完整代码在第4步,此步骤可以省略

    1. s = Service(r'C:\Users\xx\PycharmProjects\QQR\source\edgedriver_win64\msedgedriver.exe')
    2. #你刚刚解压后文件夹中msdgediver.exe的位置。(绝对路径)

     4 万事俱备开始操作了

    完整代码如下:

    1. from selenium import webdriver
    2. from selenium.webdriver.common.by import By
    3. from selenium.webdriver.edge.service import Service
    4. import time
    5. #你刚刚解压后文件夹中msdgediver.exe的位置。(绝对路径)
    6. s = Service(r'C:\Users\xx\PycharmProjects\QQR\source\edgedriver_win64\msedgedriver.exe')
    7. #加载浏览器引擎
    8. driver = webdriver.Edge(service=s)
    9. #填入要访问的网址
    10. driver.get('https://www.baidu.com/')
    11. #线程阻塞的时间这里以秒为单位0.3即代表0.3秒
    12. time.sleep(0.3)
    13. #value中填写的是 XPath的相对路径(不会看的看弟5步)
    14. teacher = driver. find_element(by=By.XPATH,value='//*[@id="kw"]')
    15. time.sleep(1)
    16. #点击操作
    17. teacher.click()
    18. #在文本框中填写文字
    19. teacher.send_keys('江涛666')
    20. time.sleep(0.3)
    21. button = driver.find_element (by=By.XPATH,value='//*[@id="su"]')
    22. time.sleep(0.3)
    23. button.click()
    24. time.sleep(10)
    25. #关闭页面
    26. driver.close()

     5 补充,查看Xpath的路径的方法

    查看百度的输入框的Xpath路径,

    具体操作是:

    右击鼠标-》找到检查并点击-》点击检查页面的左上角屏幕中的那个像点击屏幕的小图标-》点击指定位置-》定位元素后找到定位位置-》右击鼠标-》点击复制-》点击复制Xpath-》将复制后的路径放在代码指定位置即可

    OK。文章到这里已经接近尾声了各位读者们可以自由发挥哦!拜拜,我们下期再见

  • 相关阅读:
    一篇文章带您了解PHP数组
    【JavaScript-节点操作】如何进行节点的删除以及动态表格的创建,了解三种动态元素的创建区别
    神秘字符(acm模式)
    【Python 实战基础】Pandas对表格数据类型的创建与转换
    c#中的消息处理函数和vc中的消息处理函数区别
    Postgresql事物快照介绍
    【Django】Django路由urls详解
    一文读懂差分数组~
    WEB-Wordlist-Generator:为扫描后的Web应用生成相关联的字典
    高中物理:力、物体和平衡
  • 原文地址:https://blog.csdn.net/qq_53679247/article/details/126224260