从零开始学习selenium-第一课

import time

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

driver=webdriver.Chrome()
driver.get('http://www.baidu.com/')
#driver.find_element(by=By.ID,value='kw').send_keys('python')
#driver.find_element(By.NAME,'wd').send_keys('csdn')
#driver.find_element(By.CLASS_NAME,'s_ipt').send_keys('csdn')
driver .find_element(By.LINK_TEXT,'新闻').click()
time.sleep(5)
driver.quit()

首先,查找页面元素以及标签:http://www.baidu.com/

按下F12可查找页面元素,也可使用鼠标移动到需要找的元素上面,鼠标右键点击检查即可

右图颜色加深区域就是需要找的目标元素代码

下面通过Xpath查找元素

在深颜色区域鼠标右键,复制XPath,下面代码实现一下

import time

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

driver=webdriver.Chrome()
driver.get('http://www.baidu.com/')

driver.implicitly_wait(10)
driver.find_element(By.XPATH,'/html/body/div[2]/div[1]/div[3]/a[1]').click()

time.sleep(5)
driver.quit()

这里有一个需要注意的就是,

driver.implicitly_wait(10)#隐式等待,如果没有这行代码就会出错,因为页面加载的比较慢,需要等到页面加载完成再进行点击操作

XPath按绝对路径查找要比按照标签查找要快很多,你可以根据上面两个代码验证一下,以及上面代码出现报错的,多试几次就可以运行成功,有时候网页会有拒绝服务的功能。或者加长隐式等待时间,又或者可以更换XPath路径,不使用完整的路径而是使用XPath的相对路径,需要注意的是这种方法极其不稳定,报错与否看运气,哈哈哈哈

补充一点:因为页面元素标签中的id值具有唯一性,所以用id操作selenium准确度比较高

另外还有一些用法读者可自行试试,可以跳转到源看看用法,本章只是告诉读者们最开始遇到的代码以及问题

  • 13
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值