python爬取网页,少不了使用几种网页元素的定位方法。
使用火狐浏览器下载firebug和firepath组件,可以有效快速的获取定位。
常见定位方法
常见的定位元素、id、class、css、xpath使用方法如下:
find_element_by_name
find_element_by_xpath
find_elemrnt_by_link_text
find_element_by_css_selector
其中xpath、selector等可以通过firepath审查元素,对相关选项点击鼠标右键copy得到。
导入相关库
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
打开网页进行搜索
使用id定位
dr = webdriver.Chrome() #打开谷歌浏览器
url=”http://www.baidu.com”
dr.get(url)
dr.find_element_by_id(“kw”).send_keys(“python”)
time.sleep(5)dr.find_element_by_id(“su”).click()
time.sleep(5)print(“浏览百度完成”) dr.quit()
关于css 定位
id属性、class、标签定位他们还能组合在一起使用
以百度首页为例
#表示id属性 .表示class属性 标签直接使用
dr.find_element_by_css_selector(“#kw”)
dr.find_element_by_css_selector(“.s_ipt”)
dr.find_element_by_css_selector(“input”)
组合形式
![](/qrcode.jpg)
driver.find_element_by_css_selector(“input.s_ipt”)
driver.find_element_by_css_selector(“inpot[ad=”sss”]”)
层级关系 这里是input下的span下的a元素
driver.find_element_by_css_selector(“inpot > span >a”)