Selenium Python - выбор диапазона данных - PullRequest
0 голосов
/ 25 октября 2018

enter image description here

Я приложил изображение Календаря, с которым я работаю.Я пытаюсь выбрать 1 января 2018. Однако, когда я запускаю xpath для любой даты, отличной от октября (текущего месяца), он вводит дату октября.Поэтому вместо 1 января он выбирает 1 октября 2018 года.

Это код, который я сейчас использую

#Open Table 
link2 = driver.find_element_by_xpath('/html/body/table[1]/tbody/tr[2]/td[2]/table/tbody/ tr/td[2]/table/tbody/tr/td/form/table/tbody/tr[4]/td[4]/a/img')
link2.click()

#Select Jan 1
link3 = driver.find_element_by_xpath('//*[@id="ds_calclass"]/table/tbody/tr[4]/td[2]')
link3.click()

Я просто надеялся увидеть, есть ли у кого-то еще эта проблема, икак они обошли это.

Заранее спасибо !!

1 Ответ

0 голосов
/ 30 октября 2018

Возможно, это не лучшая стратегия, но я нашел способ вернуть определенное количество месяцев от текущей даты в календаре этого типа.

#Go back 1 month by clicking on the left arrow key
c1 = driver.find_element_by_xpath('//*[@id="ds_calclass"]/table/tbody/tr[1]/td[2]')
c1.click()

#Go back 2 months
c2 = driver.find_element_by_xpath('//*[@id="ds_calclass"]/table/tbody/tr[1]/td[2]')
c2.click()

#Go back 3 months
c3 = driver.find_element_by_xpath('//*[@id="ds_calclass"]/table/tbody/tr[1]/td[2]')
c3.click()
#Select A Date
link3 = driver.find_element_by_xpath('//* 
[@id="ds_calclass"]/table/tbody/tr[4]/td[2]')
link3.click()

Этот код позволяет вернуться назад на 3 месяца с 1-го числа текущего месяца.

PS: Вы делаете это путем нахождения xpath левой стрелки и затем xpath первого числа первого числа месяца.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...