Выход из всплывающей формы после загрузки PDF Селена Python Chromeriver - PullRequest
0 голосов
/ 03 декабря 2018

Недавно я получил помощь по загрузке PDF-файла из всплывающей формы, но теперь я хотел бы выйти из формы и по какой-то причине не могу выполнить какие-либо действия после загрузки PDF.

Я пробовал ActionChains(driver).send_keys(Keys.ESCAPE).perform(), и он не выходит из формы.Я также попытался driver.back(), но это возвращает одну страницу назад, и я хотел бы остаться на текущей странице, чтобы продолжить загрузку файлов.

Вот код на данный момент:

options = webdriver.ChromeOptions()
prefs = {"download.default_directory":"C:/Users/gille/Documents/SJ Webscraping/data","plugins.plugins_list":[{"enabled":False,"name":"Chrome PDF Viewer"}]}
options.add_experimental_option("prefs",prefs)

driver = webdriver.Chrome(options=options)
driver.get("https://www.southtechhosting.com/SanJoseCity/CampaignDocsWebRetrieval/Search/SearchByElection.aspx")
driver.find_element_by_xpath('//*[@id="ctl00_DefaultContent_ASPxRoundPanel1_btnFindFilers_CD"]').click()
driver.find_element_by_xpath('//*[@id="ctl00_GridContent_gridFilers_DXCBtn0"]').click()
driver.find_elements_by_xpath('//td[@class="dxgvCommandColumn_Glass dxgv"]//img[@title="View Form"]')[0].click()

driver.switch_to.frame(driver.find_element_by_tag_name('iframe'))
a = driver.find_element_by_link_text("Click here")
ActionChains(driver).key_down(Keys.CONTROL).click(a).key_up(Keys.CONTROL).perform()

#insert exit sequence here

Попытка выхода из следующей всплывающей формы: enter image description here

1 Ответ

0 голосов
/ 04 декабря 2018

Я обновил свой ответ здесь , но если вы пропустили его,

Попробуйте закрыть всплывающее окно:

driver.switch_to.default_content()
driver.find_element_by_xpath('//*[@id="ctl00_GenericPopupSizeable_InnerPopupControl_HCB-1"]/img').click()

Объяснение: Кнопка закрытияВсплывающее окно отсутствует в iframe, где отображается ссылка на скачивание, поэтому нам нужно вернуться к основному содержанию и нажать кнопку закрытия всплывающего окна.

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