python.使用selenium新定位方法 driver.find_element(By.‘方式‘, “xxx“) 和 解决复制粘贴不生效也不报错的坑

这篇具有很好参考价值的文章主要介绍了python.使用selenium新定位方法 driver.find_element(By.‘方式‘, “xxx“) 和 解决复制粘贴不生效也不报错的坑。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近在家歇着没事做就简单复习一下,然后就踩了两个小坑

1. 旧方式定位运行报错
发现新版的python,已经弃用了之前的元素定位方法,所以在使用的时候会发现有报错,
重新整理了一下目前使用的元素定位方法:driver.find_element(By.'方式', "xxx"),
同时新方法需要导入By包。

2. mac复制粘贴不报错也不生效
发现就是复制粘贴在windows 和 mac的使用上有些区别
 1. win:使用Keys.CONTROL参数实现复制粘贴
 2. mac:要用Keys.COMMAND参数实现复制粘贴
from selenium.webdriver.common.keys import Keys
# win
driver.find_element(By.ID, ' id').send_keys(Keys.CONTROL, 'c')
# mac
driver.find_element(By.ID, ' id').send_keys(Keys.COMMAND, 'c')

新定位方式示例代码如下:文章来源地址https://www.toymoban.com/news/detail-517178.html

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
driver.maximize_window()

# id
driver.find_element(By.ID, "id")

# name
driver.find_element(By.NAME, "name")

# class name
driver.find_element(By.CLASS_NAME, "class_name")

# tag_name
driver.find_element(By.TAG_NAME, "tag_name")

# link_text
driver.find_element(By.LINK_TEXT, "XXXXXXXXXXX")

# partial_link_text
driver.find_element(By.PARTIAL_LINK_TEXT, "XXXXXXXXXXXX")

# xpath
driver.find_element(By.XPATH, "/html/body/div[3]/div[2]/div[3]/div/div[1]")

# css_selector
driver.find_element(By.CSS_SELECTOR, '[value="1"]')

到了这里,关于python.使用selenium新定位方法 driver.find_element(By.‘方式‘, “xxx“) 和 解决复制粘贴不生效也不报错的坑的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Selenium中find_element_by_id无法使用,改用driver.find_element(by=By.ID, value=None)

    在自学selenium的时候,可能教学视频太老了,WebDriver已经没有find_element_by_id这个方法了。 执行结果如下: bug翻译如下: AttributeError:“WebDriver”对象没有属性“find_element_by_id” 通过自动补齐代码发现,WebDriver里面还是有find_element这个方法的。 通过按住Ctrl,点击该方法,我们

    2024年02月11日
    浏览(35)
  • selenium---元素定位(find_element)

    find_element属于定位元素的一种方法,包含了常用的定位方法。 在使用find——element 时 一定要导入相关的包,不然会报错 以百度页面为例: 选中搜索框,右键点击检查 本篇一切方法都是基于此。 1.选择要使用的浏览器和搜索网站,以Chrome浏览器和百度为例 2.以 id 为例 从上面

    2024年01月16日
    浏览(30)
  • selenium driver.find_element 报错 invalid argument: invalid locator

    selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: invalid locator 报错信息:invalid argument: invalid locator 提示的是 定位器 locator 的 参数 argument 是无效的, 为什么无效,是我代码写错了, driver.find_element( \\\'//*[@id=\\\"staffid\\\' ).send_keys(‘handsome’) 定位器 locator 少了最重要的参

    2024年01月25日
    浏览(36)
  • Selenium的find_element()与find_elements()和By的几种方法

    打印索引元素的文本属性: 定义一个根据元素文本获取元素的函数: 获取元素value值 看一下By支持的方法 示例 CLASS_NAME、NAME、ID同理,以www.baidu.com为例

    2024年02月07日
    浏览(33)
  • Python selenium find_element()示例详解

    selenium有以下定位方式: 1 2 3 4 5 6 7 8 driver.find_element_by_id(‘ id \\\') driver.find_element_by_xpath( \\\'xpath\\\' ) driver.find_element_by_link_text( \\\'link_text\\\' ) driver.find_element_by_partial_link_text( \\\'partial_link_text\\\' ) driver.find_element_by_name( \\\'name\\\' ) driver.find_element_by_tag_name( \\\'tag_name\\\' ) driver.find_element_by_class_name( \\\'cla

    2024年02月02日
    浏览(35)
  • driver.find_element()用法

    driver.find_element()用于在Web页面中定位单个元素。它是Selenium WebDriver库中的 一种方法。该方法接受一个定位器(locator)和一个值作为参数,用于指定要查找的元素 位置。下面是具体的用法和一些例子: 通过ID定位元素: driver.find_element(By.ID, “element_id”) 例如:driver.find_eleme

    2024年02月05日
    浏览(41)
  • selenium新版使用find_element/find_elements函数锁定元素(替换原有find_element_by_xx)

    css选择器请参考:网络爬虫之css选择器 原来的 find_element_by_xx 都被修改为 find_element (返回匹配到的第一个元素)或 find_elements (返回全部的匹配元素) 选择 标签a的href属性 根据css选择器选择 span class=\\\"text\\\"xxxx/span

    2024年02月03日
    浏览(35)
  • selenium+find_elements用法

    1、假如我们遇到多个标签的class一样,比如像下面这样的 我们可以采用js语法去定位,比如:

    2024年02月07日
    浏览(31)
  • selenium之find_elements的妙用

    最近因为工作上的需要(我不是测试,不是前端,也不是测试),任务就是下载大量的文件,其中遇到一个页面有多个需要下载的对象,因为是刚入门selenium,很多功能还在摸索。 1.找到所有满足条件的页面元素 driver.find_elements(By.XPATH, 路径) 一般是需要提取所有满足条件的元

    2024年02月11日
    浏览(31)
  • selenium的find_elements非常慢的解决办法

    在使用find_elements的过程中发现,有时候比较快,有时候非常慢,慢的时候可以达到几分钟,实在不能忍受,必须要解决。 后来看到国外一片文章(抱歉地址忘记了)说,find_elements慢的原因是页面上有很多ajax的请求,默认模式下会等待这些ajax的加载完成后才执行,所以阻塞

    2024年02月03日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包