http://www.lianschedule.site/457
https://www.zybuluo.com/mwumli/note/222253
| 编码 | #coding=utf-8 |
| 导入开发包 | from selenium import webdriver |
| 获得浏览器对象 | driver=webdriver.Firefox() |
| 定位 | find_element_by_id("xx") |
| 定位一组元素 | find_elements_by_id("xx") |
| 控制浏览器 | driver.set_window_size(480,800)//宽400高800像素 |
| 元素操作 | .clear()//清楚文本 |
| 鼠标 | from selenium.webdriver import ActionChains |
| 键盘 | from selenium.webdriver.common.keys import Keys |
| 显式等待 | .until(EC.x4).until_not(EC.x4) x4: from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC title_is()//页面标题 title_contains()//页面标题 presence_of_element_located()//是否被加载 visibility_of_element_located()//是否可见 visiblity_of()//是否可见 presence_of_elements_located()//至少有一个元素存在 text_to_be_present_in_element()//text包含 text_to_be_present_in_element_value()//value包含 frame_to_be_available_and_switch_to_it()//表单是否可以切换进去 invisibility_of_element_located()//是否不存在 element_to_be_clickable()//是否可见且可以点击 staleness_of()//等到一个元素从DOM树中移除 element_to_be_selected()//判断是否被选中,一般是下拉列表 element_selection_state_to_be()//判断某个元素的选中状态是否符合预期 element_located_selection_state_to_be()//判断某个元素的选中状态是否符合预期 alert_is_present()//判断是否存在alert from selenium.webdriver.common.by import By(By.ID,”xx”) (By.NAME,”xx”) (By.CLASS_NAME,”xx”) (By.TAG_NAME,”xx”) (By.LINK_TEXT,”xx”) (By.PARTIAL_LINK_TEXT,”xx”) (By.XPATH,”xx”) (By.CSS_SELECTOR,”xx”) |
| 隐式等待 | driver.implicitly_wait(x1) |
| sleep | from time import sleep |
| 窗口 | driver.current_window_handle |
| 打开网页 | driver.get("url") |
| 输入 | n=input("xxx") |
| 输出 | print("xxx") |
| 引号与注释 | 不区分单引号与双引号 单行注释:# 多行注释:前后各三个引号 |
| 函数 | def name(x1,x2) |
| 引用模块 | import xxx |
