selenium - DatePicker 输入框中没有值属性
问题描述
我必须抓取这个网站,首先我需要在字段中输入数据。我正在使用 Selenium 库来完成这项任务。
页面源有以下代码,我想在日期输入框中输入日期。
<div style="float: right;">
<input name="ctl00$ContentPlaceHolder1$txtdate" type="text"
id="ctl00_ContentPlaceHolder1_txtdate" style="width:100px;" />
</div>
但是碰巧没有值属性,当我尝试使用该driver.send_keys()
方法发送输入时,什么也没有发生。
这是我尝试过的,但它不起作用。
date = driver.find_element_by_id("ctl00_ContentPlaceHolder1_txtdate")
date.send_keys('09/12/2018')
我什至尝试过使用ActionChains
模块进行鼠标操作,但日期输入框不可点击。
我在这里做错了什么吗?
解决方案
我按照你的方法试过了,它对我有用。不知道为什么它不适合你。
这是我与您提供的代码一起使用的代码:
from selenium import webdriver
url = 'http://nhb.gov.in/OnlineClient/categorywiseallvarietyreport.aspx?enc=3ZOO8K5CzcdC/Yq6HcdIxJ4o5jmAcGG5QGUXX3BlAP4='
driver = webdriver.Chrome()
driver.get(url)
date = driver.find_element_by_id("ctl00_ContentPlaceHolder1_txtdate")
date.send_keys('09/12/2018')
它奏效了。
也许,尝试使用.find_element_by_name
和使用"ctl00$ContentPlaceHolder1$txtdate"
?
url = 'http://nhb.gov.in/OnlineClient/categorywiseallvarietyreport.aspx?enc=3ZOO8K5CzcdC/Yq6HcdIxJ4o5jmAcGG5QGUXX3BlAP4='
from selenium import webdriver
driver = webdriver.Chrome()
driver.get(url)
driver.find_element_by_name("ctl00$ContentPlaceHolder1$txtdate").send_keys('09/12/2018')
推荐阅读
- javascript - 如何只访问给定对象的第一个元素而不访问数组?
- c++ - C++ 从日期字符串解析时区
- r - R 包“ElemStatLearn”不可用(对于 R 版本 3.6.3)是否有任何替代方案可用
- python - Python:从列表中写入 .gz 压缩文件
- java - HLS 播放问题
- python - 如何循环遍历模型 Python 中的字符串?
- sql - SQL Server - 获取删除了分钟和秒的日期时间(仅限日期和小时)
- python - 如何将 word2vec 生成的特征与 VGGNet 生成的特征连接起来
- java - 是否可以恢复父类的重写方法?
- python - Python:时间关键循环内的内联代码