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()
相关推荐
计算机毕设定制辅导-无忧学长7 分钟前
Git 钩子的应用与自动化流程
运维·git·自动化
亦世凡华、1 小时前
从零开始:使用Jenkins实现高效自动化部署
运维·自动化·jenkins·安装教程·基本使用
drebander3 小时前
Maven 和 CI/CD 集成:自动化构建与部署
ci/cd·自动化·maven
不被定义的号5 小时前
docker swarm里搭建Selenium Grid分布式测试集群,测试节点随时在线,无需反复启停,效率增倍
分布式·selenium·docker
shadowcz0076 小时前
Open-Interface:基于大语言模型 LLM 的自动化界面操作系统
运维·人工智能·语言模型·自然语言处理·自动化
亿牛云爬虫专家10 小时前
深度解析:使用ChromeDriver和webdriver_manager实现无头浏览器爬虫
爬虫·selenium·爬虫代理·chromedriver·亿牛云·webdriver·代理ip
beishida12311 小时前
测试自动化落地方向
自动化
编程就是如此15 小时前
OpenStack-Train版-Allinone自动化部署脚本
运维·自动化·openstack
weixin_4462608516 小时前
PDF翻译自动化:利用Make打造反思翻译工作流
运维·pdf·自动化
字节程序员1 天前
Selenium-介绍下其他骚操作
selenium·测试工具