web自动化(四)日期控件

执行js脚本有两种方式一种是原始js 一种jQuery 推荐使用jQuery 根据简洁 方便

selenuim

bash 复制代码
import time

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import  WebDriverWait
from  selenium.webdriver.support import  expected_conditions as EC
web=webdriver.Firefox()
web.get("https://www.12306.cn/index")
el=(By.ID,"train_date")
WebDriverWait(web,10,2).until(EC.presence_of_element_located(el))
el_se=web.find_element(*el)
#执行js 方式
# js="arguments[0].setAttribute('readonly',true)"
# web.execute_script(js,el_se)
# time.sleep(5)
# #控件如果是只读,需要删除readonly 属性
# #arguments 是参数集合
# js="var el=arguments[0]; el.removeAttribute('readonly')"
# web.execute_script(js,el_se)

#jQuery 方式 推荐
js="$('#train_date').attr('readonly',true)"
time.sleep(5)
web.execute_script(js)
time.sleep(5)
js="$('#train_date').removeAttr('readonly')"
web.execute_script(js)


time.sleep(5)
el_se.clear()
time.sleep(2)
el_se.send_keys("2024-07-15")
time.sleep(5)
web.quit()

drissionpage

bash 复制代码
import time
from DrissionPage import  WebPage
from DrissionPage.common import By as DBy
web_page=WebPage("d")
web_page.get("https://www.12306.cn/index")
el=(DBy.ID,"train_date")

web_page.wait.eles_loaded(el,timeout=5)
js="$('#train_date').attr('readonly',true)"
web_page.run_js(js)
time.sleep(10)

js="$('#train_date').removeAttr('readonly')"
web_page.run_js(js)

time.sleep(5)

js="$('#train_date').val('2024-7-18')"
web_page.run_js(js)

time.sleep(5)
web_page.quit()
相关推荐
代码方舟10 小时前
零信任架构实战:基于天远车辆估值构建自动化二手车评估网关
运维·人工智能·架构·自动化
xing251612 小时前
Playwright Python浏览器自动化实战
自动化
代码方舟13 小时前
零信任架构实战:基于天远车辆过户详版查询构建自动化车辆估值网关
运维·人工智能·架构·自动化
MBD进行时14 小时前
生产制造 & 质量检测自动化:MBDVidia 检查修复产品 MBD 数据有效改进工业制造企业上下游协作!
自动化·制造·mbd模型质量管理·pmi自动检查与修复·mbdvidia·mbd数据检查与修复·工业制造企业上下游协作
进击的雷神15 小时前
网站 SEO 功能怎么测:从手工检查到自动化脚本的实战思路
运维·爬虫·自动化·官网seo·收录
乐橙开放平台15 小时前
把工地遮挡和掉线接进项目部:setMessageCallback 订 alarm 与 deviceStatus
笔记·后端·物联网·自动化·音视频·智能家居
Kismet_nvi15 小时前
Python运维自动化核心模块
运维·python·自动化
CCTI_Curran16 小时前
电动工具CE认证到底测什么?一文说清
自动化·电动工具·ce认证·角磨机·砂轮机
降临-max17 小时前
Selenium(HTML+JavaScript&DOM+Selenium IDE)
自动化测试·selenium·测试工具·html
天远Date Lab17 小时前
分布式微服务实战:基于天远车辆估值构建自动化车价评估网关
人工智能·分布式·微服务·自动化