如何使用硒在15天范围内的网站上遍历日期范围?

时间:2019-06-10 23:31:36

标签: python selenium date iteration

我正在从一个仅允许15天范围的网站上自动收集数据。我的目标是获取2016年至今的数据。为此,我正在使用硒。如何使用硒进行循环以在开始和结束日期内收集数据?

通过将代码块复制粘贴60次并更改日期范围以获取30个月的数据,我能够获得所需的结果。但我希望通过引入while循环来使代码更高效,更小。

#removing information from date range
browser.find_element_by_xpath('//*[@id="ctl00_mainScreen_mmDealSearchDealDetails_daterange_dIFrom"]').clear()
browser.find_element_by_xpath('//*[@id="ctl00_mainScreen_mmDealSearchDealDetails_daterange_dITo"]').clear()

#putting From and To date
browser.find_element_by_xpath('//*[@id="ctl00_mainScreen_mmDealSearchDealDetails_daterange_dIFrom"]').send_keys('01/05/2019')
browser.find_element_by_xpath('//*[@id="ctl00_mainScreen_mmDealSearchDealDetails_daterange_dITo"]').send_keys('15/05/2019')

#clicking on search button
browser.find_element_by_xpath('//*[@id="ctl00_mainScreen_btnSearch4"]').click()

#clicking on Download ALL button
browser.find_element_by_xpath('//*[@id="ctl00_mainScreen_DealsSummaryComplex_ExtendedResultsToolbar1_lbReportAll"]').click()

#clicking on Download button under Personalised Reports Section
browser.find_element_by_xpath('//*[@id="ctl00_mainScreen_ctl01_btnDownload"]').click()

sleep(30)

#switches to download window
browser.switch_to.window(browser.window_handles[1])

#clicks on download deals option
browser.find_element_by_xpath('//*[@id="ctl00_popupScreen_lblClickHere"]').click()

#closes download window
browser.close()

#clicking on Last Search Tab
browser.switch_to.window(browser.window_handles[0])
browser.find_element_by_xpath('//*[@id="ctl00_pageHeader"]/header/nav/div/ul/li[2]/a').click()

此部分代码重复30次,每个代码块的开始日期和结束日期都不同(第6行和第7行)。有人可以帮我这个忙吗?

0 个答案:

没有答案