web自動化中js操作的操作應用

2022-07-26 08:33:08 字數 2168 閱讀 1471

在做web自動化過程,有時會遇到文字框為唯讀狀態,無法手動輸入值,這時就需要使用js,將其readonly屬性設定為false,再進行send_keys操作。

那麼,轉換成python**,如何實現呢?

以下**中實現了手動修改出發地、目的地和出發日期的功能:

#

-*- coding: utf-8 -*-

#@time : 2020/3/17 14:33

#@author : benben

#@file : js_12306.py

from selenium import

webdriver

from selenium.webdriver.common.by import

byfrom selenium.webdriver.support.wait import

webdriverwait

from selenium.webdriver.support import

expected_conditions as ec

import

time

driver =webdriver.chrome()

driver.maximize_window()

driver.get(

"")#查詢出發地

start_text = (by.xpath, '

//input[@id="fromstationtext"]')

start = (by.xpath, '

//input[@id="fromstation"]')

st_ele = driver.find_element(*start_text)

s_ele = driver.find_element(*start)

#修改出發地

webdriverwait(driver, 10).until(ec.visibility_of_element_located(start_text))

time.sleep(3)

driver.execute_script(

'var st=arguments[0];var s=arguments[1];st.value ="北京";s.value="bjp"

', st_ele, s_ele)

#查詢目的地

to_text = (by.xpath, '

//input[@id="tostationtext"]')

to = (by.xpath, '

//input[@id="tostation"]')

to_ele = driver.find_element(*to_text)

t_ele = driver.find_element(*to)

#修改目的地

webdriverwait(driver, 10).until(ec.visibility_of_element_located(to_text))

driver.execute_script(

'var tx=arguments[0]; to=arguments[1];tx.value="上海";to.value="shh"

', to_ele, t_ele)

#查詢日期框

loc = (by.xpath, '

//input[@id="train_date"]')

element = driver.find_element(*loc)

#修改日期框中的 readonly 屬性

d_date = time.strftime("

%y-%m-%d

", time.localtime())

driver.execute_script(

"var a=arguments[0];a.readonly = false;a.value=arguments[1];

", element, d_date)

#點選查詢按鈕

driver.find_element(by.xpath, '

//a[@id="search_one"]

').click()

time.sleep(3)

driver.quit()

web自動化之Select標籤操作

from selenium import webdriver from selenium.webdriver.support.wait import webdriverwait from selenium.webdriver.support import expected conditions as...

web自動化 模擬滑鼠 鍵盤操作

一 滑鼠操作 1.1滑鼠的懸停操作,move to element from selenium import webdriver from selenium.webdriver.common.action chains import actionchains action actionchains ...

AutoIt 軟體自動化操作

autoit 目前最新是v3版本,這是乙個使用類似basic指令碼語言的免費軟體,它設計用於windows gui 圖形使用者介面 中進行自動化操作。它利用模擬鍵盤按鍵,滑鼠移動和視窗 控制項的組合來實現自動化任務。而這是其它語言不可能做到或無可靠方法實現的 例如vbscript和sendkeys ...