申明浏览器类型
from selenium import webdriver
browser = webdriver.Chrome()
browser = webdriver.Firefox()
browser = webdriver.Safari()
browser = webdriver.Edge()
browser = webdriver.PhantomJS()
访问页面
browser.get("www.baidu.com")
browser.page_source
browser.close()
定位元素的方法
from selenium.webdriver.common.by import By
content = browser.find_element_by_id("xx")
content = browser.find_element(By.ID, "xx")
contents = browser.find_elements(By.ID, "xx")
contents = browser.find_elements_by_id("xx")
content = browser.find_element_by_name("xx")
content = browser.find_element(By.NAME, "XX")
content = browser.find_element_by_xpath("xx")
content = browser.find_element(By.XPATH, "XX")
content = browser.find_element_by_link_text("xx")
content = browser.find_element(By.LINK_TEXT, "XX")
content = browser.find_element_by_partial_link_text("xx")
content = browser.find_element(By.PARTIAL_LINK_TEXT, "XX")
content = browser.find_element_by_tag_name("xx")
content = browser.find_element(By.TAG_NAME, "XX")
content = browser.find_element_by_class_name("xx")
content = browser.find_element(By.CLASS_NAME, "XX")
content = browser.find_element_by_css_selector("xx")
content = browser.find_element(By.CSS_SELECTOR, "XX")
# 元素的交互
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument('--headless')
browser = webdriver.Chrome(chrome_options = chrome_options)
browser.set_window_size(1600,600)
browser.back()
browser.forward()
browser.refresh()
input = browser.find_element_by_id("xx")
input.send_keys("xx")
input.clear()
button = browser.find_element_by_id("xx")
button.click()
li = browser.find_element_by_id("xx")
li.text
browser.submit()
input.is_displayed()
鼠标事件
from selenium.webdriver.common.action_chains import ActionChains
content = browser.find_element_by_name("xx")
ActionChains(browser).move_to_element(content).perform()
ActionChains(browser).move_to_element(content).double_click()
ActionChains(browser).move_to_element(content).drag_and_drop()
断言
browser.title
browser.current_url
设置网页等待时间方式
import time
time.sleep(1)
browser.implicitly_wait(30)
from selenium.webdriver.support.ui import WebDriverWait
content = WebDriverWait(browser,10).until(lambda x : browser.find_element_by_name("xx") )
其他
browser.execute_script("代码")
browser.get_screenshot_as_png("")
browser.quit()
browser.close()