Selenium + Python 自学笔记 12天(By 定位元素)

用By定位元素
针对前面介绍的八种定位方法,WebDriver还提供了另一套写法,即统一调用find_element()方法,通过By来声明定位,并且传入对应的定位方法的定位参数,具体如下
 
find_element(By.ID,"kw")
find_element(By.NAME,"wd")
find_element(By.CLASS_NAME,"s_ipt")
find_element(By.TAG_NAME,"input")
find_element(By.LINK_TEXT,"新闻")
find_element(By.PARTIAL_LINK_TEXT,"新")
dinf_element(By.XPATH,"//*[@class="bg s_btn"]")
find_element(By.CSS_SELECTOR,"span.bg s_btn_wr > input#su")
find_element()方法只用于定位元素,他需要两个参数,第一个参数是定位的类型,第二个参数是定位的值,在使用By之前需要先导入
 
 
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Firefox()
driver.get("http://womituofu.pc.evyundata.cn/dom/zhuce.php?username=womituofu")
driver.find_element(By.ID,"user_name").send_keys("babadebaba1")
driver.find_element(By.ID,"password").send_keys("babadebaba1")
driver.find_element(By.NAME,"password2").send_keys("babadebaba")
driver.find_element(By.ID,"validatecode").send_keys("wuoe")
driver.find_element(By.ID,"submit_reg").click()
 
 
 
 
通过查看WebDriver的底层代码实现可以看出来他们其实是一回事 例如 id的定位方法实现
 
  def find_element_by_id(self, id_ ):
      """Finds an element by id.
        :Args:
      - id\_ - The id of the element to be found.
        :Returns:
      - WebElement - the element if it was found.
        :Raises :
      - NoSuchElementException- if the element wasn't found
        :Usage:
      element - driver.find_element_by_id('foo')
       """
      return selt.find_element(by=By.ID, value=id_)
    
    对于Web 自动化来说,学会元素的定位相当于自动化已经学会了一办,剩下的就是学会WebDriver提供的各种方法,接下来我们将通过实例介绍这些方法的具体使用
 
控制浏览器
WebDriver 主要提供页面上的各种操作元素的方法,同时他还提供一些操作浏览器的方法,如控制浏览器窗口大小 操作浏览器前
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值