使用Selenium / Python输入日期不起作用

时间:2016-02-16 22:35:33

标签: python python-3.x selenium selenium-firefoxdriver

我正在尝试使用Python中的Selenium填写表单。文本字段可以正常工作,但是当我使用发送文本到日期字段时,它无法正常工作。它似乎输入了空格。

以下是代码:

h_dob_field = firefox.find_element_by_id(
            'MainContent_txtHDateofBirth'
    ).send_keys('01012001')

控制台日志显示正在发送:

 2016-02-16 17:24:38,934 - DEBUG - POST http://127.0.0.1:45672/hub/session/283ad883-ac6a-4f25-b747-26f61cb897fc/element/{cc4f0cd1-ef8a-41f5-bf0e-615b6a970031}/value {"id": "{cc4f0cd1-ef8a-41f5-bf0e-615b6a970031}", "sessionId": "283ad883-ac6a-4f25-b747-26f61cb897fc", "value": ["2", "1", "3", "1", "9", "6", "2"]}

我定位的html是:

<input class="" name="ctl00$MainContent$txtHDateofBirth" id="MainContent_txtHDateofBirth" type="text">

我尝试输入数据的页面为here

我已经阅读了其他一些说我应该尝试调用click()方法的答案。我这样做了,但它没有效果。我正在使用firefox驱动程序; Linux 3.4上的Python 3.4,它是selenium的最新版本。

1 个答案:

答案 0 :(得分:0)

您可以使用fiddler来捕获手动填写表单的请求,并根据您的发现撰写custom web request

另一个选择是使用selenium IDE扩展程序用于Firefox(link)并使用它记录功能来记录步骤并为您制作。