文章來源地址http://www.zghlxwxcb.cn/news/detail-579787.html
import time
from selenium import webdriver
from selenium.webdriver import ActionChains
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
service = Service(r"D:\software\chromedriver.exe")
driver = webdriver.Chrome(service=service)
# 控制瀏覽器訪問url地址
driver.get("https://www.taobao.com/")
# 隱式等待
driver.implicitly_wait(1)
account = 'account' # 賬號
password = 'abc123' # 密碼
# 找到“登錄”位置
driver.find_element(by=By.CSS_SELECTOR, value="div.member-ft > div > a.btn-login").click()
driver.maximize_window()
driver.implicitly_wait(1)
# 切換頁面 獲取當(dāng)前頁面handle 獲取所有頁面的handle 列表的后面
driver.switch_to.window(driver.window_handles[1])
# 找到“賬號名”輸入框
el_account = driver.find_element(by=By.CSS_SELECTOR, value='#fm-login-id')
print(el_account.text)
driver.implicitly_wait(1)
# 點(diǎn)擊賬號輸入框
el_account.click()
# 輸入賬號
el_account.send_keys(account)
driver.implicitly_wait(1)
# 找到“密碼”輸入框
el_password = driver.find_element(by=By.XPATH, value='//*[@id="fm-login-password"]')
# print(el_password.text)
# print(el_password.location)
# 點(diǎn)擊密碼輸入框
el_password.click()
# 輸入密碼
el_password.send_keys(password)
driver.implicitly_wait(2)
# 找到“登錄”按鈕,并點(diǎn)擊
el_login_btn = driver.find_element(by=By.XPATH, value='//*[@id="login-form"]/div[4]/button')
el_login_btn.click()
# print(el_login_btn.location)
driver.implicitly_wait(1)
# 切換frame
driver.switch_to.frame('baxia-dialog-content')
# 找到滑塊,獲取寬高
el1 = driver.find_element(by=By.XPATH, value='//*[@id="nc_1_n1z"]')
print(el1.size['width'])
print(el1.size['height'])
# 找到拖動(dòng)區(qū)域,獲得寬高
el2 = driver.find_element(by=By.XPATH, value='//*[@id="nc_1__scale_text"]')
print(el2.size['width'])
print(el2.size['height'])
driver.implicitly_wait(2)
# 創(chuàng)建一個(gè)事件鏈對象
chains = ActionChains(driver)
# 實(shí)現(xiàn)滑塊拖動(dòng)
chains.drag_and_drop_by_offset(el1, el2.size['width'], -el2.size['height'])
# 事件提交
chains.perform()
time.sleep(5)
# 關(guān)閉瀏覽器
driver.close()
driver.quit()
參考文章:
- https://blog.csdn.net/u010945216/article/details/120838385
文章來源:http://www.zghlxwxcb.cn/news/detail-579787.html
到了這里,關(guān)于python selenium模擬登錄某網(wǎng)站的滑塊拖動(dòng)操作的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!