2015-12-02 50 views
1

我是新来的硒,我正在建立这个代码,我必须给下拉日历一定的价值,我完全困惑。如何使用硒和python为下拉日历提供价值

下面是我尝试使用的网站日历的html代码。 帮忙。

<input id="reportDate" name="criteria.reportDate" value="30-Nov-2015" class="form-control datepicker-control form-date" type="text"> 

这是我使用的代码到目前为止

driver=webdriver.Chrome() 
driver.get('url') 

driver.find_element_by_id('reportData').click() 

我不知道是如何在这之后进行。

我已经写了代码来获取变量“date”中的“2015年11月30日”格式的日期值。

对不起,如果代码太小,无法工作,全新的。

+0

这是相当困难的问题挑确切日期从日期选择器。我知道'jquery'请求可以解决它,但真的我不知道如何:)如果有可能只发送日期输入字段,而不是从下拉选择 - 更好地使用它) – Andersson

+0

我期待做同样的事。而不是选择一个日期,我想给你的价值像你说的,但我不知道如何发送价值作为输入。我已经写了生成所需格式的值的代码,即“日期 - 月 - 年” –

回答

0

这应该工作

date = '30-Nov-2015' 
driver.find_element_by_id("reportDate").send_keys(date) 
+0

非常感谢Andersson!此代码工作! –

0

我假设你必须从下拉日历中选择日期,你可以使用Select类。

driver=webdriver.Chrome() 
driver.get('url') 
select = Select(driver.find_element_by_id("reportData")) 
select.select_by_visible_text("30-Nov-2015") 

你也可以使用 -

select.select_by_value("30-Nov-2015") 

你可以看到webdriver的API绑定在Python这里:

http://selenium-python.readthedocs.org/en/latest/api.html

的选择()类为7.12。 UI支持

+0

您好igniteram1,感谢您的快速帮助,我试着执行您的代码,它会抛出以下错误 - > Select cal = new选择(driver.find_element_by_id('reportData'); ^语法无效 –

+0

@ igniteram1,你确定你的代码写在Python上吗?:) – Andersson

+0

对不起我在java中写的不好。这是为python –