1、窗口滚动条控制
js代码
window.scrollTo(0,1000)
window.scrollTo(0, document.body.scrollHeight)
import time from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(8) driver.get("https://www.runoob.com/python3/python3-tutorial.html") # 执行窗口滚动, 直接发送 js 指令,让浏览器执行该 js 指令。 javascript = 'window.scrollTo(0, document.body.scrollHeight)' # 通过 driver.xxx driver.execute_script(javascript) time.sleep(15) driver.quit()
2、目录滚动条控制-arguments[0].scrollTo(0,200)
页面:https://www.runoob.com/python3/python-comprehensions.html
特别注意DIV要包含滚动条,不然滚动不了
el1111=document.getElementsByClassName('left-column site-fix') HTMLCollection [div.left-column.site-fix] el1111[0].scrollTo(0,200)
import time from selenium import webdriver from selenium.webdriver.common.by import By driver = webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(8) driver.get("https://www.runoob.com/python3/python3-tutorial.html") el = driver.find_element(By.XPATH, "//div[@class='left-column']") driver.execute_script("arguments[0].scrollTo(0,200);", el) time.sleep(15) driver.find_element(By.XPATH,"//a[contains(text(),'模块')]").click() time.sleep(15) driver.quit()
3、修改属性-el.value = '***'
browser.get('https://www.12306.cn/index/') js = """var el = document.getElementById('train_date') el.readOnly = false el.value = '2022-02-08' """ browser.execute_script(js)
4、文件上传-el.send_keys(r'D:\**.**')-其实就是input元素下send_keys路径
el = browser.find_element('xpath', "//input[@type='file' and @name='detail']") el.send_keys(r'D:\**.**')
不行的话用第三方库 pywinauto pyautogui