0

私は後でスクラップできるデータを要求しようとしています。私はテキストフィールドに日付を書きますが、リクエストを送信すると、日付に従って更新されません。日付フィールドをクリックしようとしていますが、予定通りにカレンダーポップアップが表示されません。どうすればこのことができますか?Pythonセレニウムがフィールドをクリックできない

from selenium import webdriver 
driver = webdriver.Firefox() 
driver.get('https://www.fxstreet.com/economic-calendar') 

time.sleep(10) 

#close popup 
driver.find_element_by_xpath('//button[@aria-label="Close Modal"]').click() 
driver.find_element_by_id('fxit-advlink').click() 

#click filter options 
driver.find_element_by_id('fxit-advlink').click() 

#set start and end time 
driver.find_element_by_xpath("//input[contains(@id,'fxit-start-advance')]").click() 
driver.find_element_by_xpath("//input[contains(@id,'fxit-start-advance')]").send_keys("01/01/2017") 

driver.find_element_by_xpath("//input[contains(@id,'fxit-end-advance')]").click() 
driver.find_element_by_xpath("//input[contains(@id,'fxit-end-advance')]").send_keys("06/01/2017") 


#select countries 

#select data type 
driver.find_element_by_xpath('//a[@class="fxst-selectall" and @data-name="fxst-category"]').click() 

#refresh your results 
driver.find_element_by_id('fxit-filterbutton').click() 
+0

キーを送信する前にクリックする必要はありません。あなたはそれらの行をコメントすることができます – Murthi

答えて

0

希望する要素を正しく選択していることを再度確認します。これは、日付時刻選択ツールが表示されていないと言われているため、当てはまらない場合があります。

Selenium IDEの使用をお勧めします(hereのリンクをダウンロードしてください)。これはFirefox用のプラグインで、ページに対してアクションを記録することができます。あなたが持っているものと比較することができます。

0

私はあなたのコードを試して、それは私のために正しく動作します。私はカレンダーを開いて日付を入力することができます。 1点 - 入力ボックスが自動的にクリアされないので、.click()と.send_keys()の間に.clear()を含めることができます。これは、検証がある場合に日付更新が表示されない理由です正しい日付形式のために。

関連する問題