如何在Python中使用Selenium单击表单中的日期值?

aiazj4mn  于 2023-05-27  发布在  Python
关注(0)|答案(2)|浏览(142)

你能帮帮我吗?我试图点击值2023-05-25但这不起作用
Choose the date in the calendar

<form name="applicantBooking2" id="applicantBooking2" action="appointment.php" method="post" onSubmit="return validateFrm();">
                <tr id="app_date_tr" height="30">
                    <td width="20%" class="styleBlack" style="padding-left:10px;">
                        Appointment Date: <span style="color:#F00">*</span>
                    </td>
                    <td colspan="2">
                    <input type="text" readonly class="form-control-input app_date validate" style="width: 260px;" id="app_date" name="app_date" placeholder="YYYY-MM-DD" onchange="this.form.submit();showLoader();" value="2023-05-25">
                    </td>
                </tr>
Select(WebDriverWait(driver, 10).until(
                        EC.element_to_be_clickable((By.ID, "app_date")))).select_by_visible_text(
                         '2023-05-25')
dsf9zpds

dsf9zpds1#

你可以试试这个方法:

WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'input#app_date'))).send_keys('2023-05-25')

如果您注意到input标记有type=text,那么您可能可以直接输入值。
如果这不能解决问题,请添加您正在使用的URL,以帮助您找到更好的解决方案。

ztyzrc3y

ztyzrc3y2#

你可以尝试这样做:

driver.find_element_by_xpath('//input[@class="form-control-input app_date validate"]').send_key(you_need_date)

因为本质上它只是一个“输入”标签。

相关问题