官方网站:"https://selenium-python.readthedocs.io/index.html"
Selenium操作主要分两大类:
1.得到UI元素:
- find_element_by_id
- find_elements_by_name
- find_elements_by_xpath
- find_elements_by_link_text
- find_elements_by_partial_link_text
- find_elements_by_tag_name
- find_elements_by_class_name
- find_elements_by_css_selector
2.基于UI元素操作的模拟:
- 单击
- 右键
- 拖拽
- 输入
from selenium import webdriver from selenium.webdriver.common.keys import Keys import time # 获得chrome的实例,如果找不到chrome括号内可以自己添加chrome的路径 driver = webdriver.Chrome() url = "http://www.baidu.com" driver.get(url) # 获得页面截图 driver.save_screenshot("index.png") # id="kw"对应的是百度的输入框,得到输入框的ui元素后模拟键盘输入"皮皮嘉" driver.find_element_by_id("kw").send_keys(u"皮皮嘉") # id="su"对应的是百度的搜索按钮,得到搜索按钮的ui元素后直接模拟鼠标点击 driver.find_element_by_id("su").click() # 等待2秒后获得截图 time.sleep(2) driver.save_screenshot("pipijia.png") # 在控制台打印得到的cookies print(driver.get_cookies()) # 模拟输入两个按键"ctrl+a"选中搜索框内的字符 driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'a') # 模拟输入两个按键"ctrl+x"剪切搜索框内的字符 driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'x') # 剪切掉所有字符后在输入"github" driver.find_element_by_id("kw").send_keys("github") driver.save_screenshot("github.png") # id="su"对应的是百度的搜索按钮,得到搜索按钮的ui元素后模拟键盘回车 driver.find_element_by_id("su").send_keys(Keys.RETURN) time.sleep(2) driver.save_screenshot("github2.png") # 清空百度的输入框 driver.find_element_by_id("kw").clear() driver.save_screenshot("clear.png") # 最后退出谷歌浏览器 driver.quit()
调式之后的结果截图如下: