Я использую Python и Selenium для чтения этого URL: http://ips.alliance -pipeline.com / Ips / MainPage.aspx? SiteId = 4
Я использую селен, чтобы открыть егонажмите на знак плюс (слева) и нажмите «Ежедневная пропускная способность».Откроется страница с полем ввода «День газа», в который я хочу ввести дату.Если эти шаги выполняются вручную в обычном браузере Chrome, все работает нормально, я могу ввести дату и нажать «Получить» и получить таблицу данных.Но по какой-то причине селен делает поле ввода доступным только для чтения.Я попытался удалить атрибут «только для чтения» (см. Закомментированные строки), в этом случае атрибут, кажется, удаляется, но дата все еще не вводится в поле и данные не извлекаются.
Почему селен делает этот элемент доступным только для чтения и как я могу предотвратить это?
Вот код:
url = 'http://ips.alliance-pipeline.com/Ips/MainPage.aspx?siteId=4'
browser = webdriver.Chrome()
browser.get(url)
browser.find_element_by_id('treeviewn0').click() # click on "Capacity" heading
browser.find_element_by_id('treeviewt1').click() # click on "Daily Throughput" heading
time.sleep(2)
# browser.execute_script('document.getElementsByClassName("igte_EditInContainer")[0].removeAttribute("readonly")')
d = datetime.date.today() - datetime.timedelta(days=5)
d_str = d.strftime('%m/%d/%Y')
date_box = browser.find_element_by_xpath('//*[@id="MainContent_dtJobSchedForGrid"]/tbody/tr/td[1]/input')
# print(date_box.get_attribute('readonly'))
date_box.send_keys(d_str + '\n')
time.sleep(5)
browser.find_element_by_id('MainContent_btnRetrieveJobSchedForGrid').click() # click the Retrieve button
time.sleep(5)