1、通过属性id定位 find_element_by_id
2、下面我们通过百度搜索框的例子来看。打开百度首页,打开F12,手标点到搜索框,可以看到搜索框元素input,属性id=kw,当然还有别的元素,下面再讲。
3、我们要操作这个搜索框,就可以先定位到这个搜索框元素
from selenium import webdriver driver = webdriver.Chrome() driver.get("http://www.baidu.com") driver.maximize_window() msg = driver.find_element_by_id('kw') print(msg) driver.quit()
4、打印这个所定位的元素
5、当然找到元素不是我们的目的,我们想要的是操作元素,比如:send_keys 传入内容
from selenium import webdriver import time driver = webdriver.Chrome() driver.get("http://www.baidu.com") driver.maximize_window() # msg = driver.find_element_by_id('kw') driver.find_element_by_id('kw').send_keys('hello world')
time.sleep(5) driver.quit()
当运行这串代码时,可以看到百度首页的搜索框已经输入了 “hello world”,这个就达到了我们的目的。当然元素操作还有很多,后面会细讲。
从上面这个例子中,我们定位元素已经非常成功了,定位元素还有其他7个定位方法。