Member 13927548 Ответов: 0

Загрузите все секретные ссылки с сайта дизайна карт


Существует веб-сайт, который показывает ссылки на карте (слой карты в настоящее время не может быть показан, но ссылки могут быть показаны в виде точек). Чтобы просмотреть этот сайт, необходимо выполнить следующие действия: (на рисунках 1-2-3 также показан путь)

Во-первых, нажмите на этот сайт 'http://svtbilgi.dsi.gov.tr/Sorgu.aspx', рис. 1 https://i.stack.imgur.com/NVOUT.jpg

Во-вторых, выберите ' 15. Кизилирмак Хавзаси" из вкладки "Хавза", https://i.stack.imgur.com/w0lVY.jpg рисунок 2

Наконец, нажмите кнопку "sorgula" внизу. https://i.stack.imgur.com/3VtJD.jpg рисунок 3

После заключительного этапа вы должны просмотреть веб-сайт ('http://svtbilgi.dsi.gov.tr/HaritaNew.aspx') где точки могут быть показаны на карте. https://i.stack.imgur.com/2T0uV.jpg рисунок 4

Обычно я могу использовать selenium для загрузки веб-страниц или захватить все ссылки, используя разные библиотеки. Однако эти методы не могут получить ссылки, потому что они встроены почти секретным способом.

Я хотел бы скачать все ссылки, которые есть в этих пунктах.

Что я уже пробовал:

from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.support.ui import WebDriverWait


driver = webdriver.Firefox(executable_path=r'D:\geckodriver.exe')
driver.get("http://svtbilgi.dsi.gov.tr/Sorgu.aspx")
driver.find_element_by_id("ctl00_hld1_cbHavza").click()
Select(driver.find_element_by_id("ctl00_hld1_cbHavza")).select_by_visible_text("15. Kizilirmak Havzasi")
driver.find_element_by_id("ctl00_hld1_cbHavza").click()
driver.find_element_by_id("ctl00_hld1_btnListele").click()
parent_handle = driver.current_window_handle
all_urls = []
all_images = driver.find_elements_by_xpath("//div[contains(@id,'OL_Icon')]/img")
for image in all_images :
     image.click()
     for handle in driver.window_handles :
          if handle != parent_handle:
              driver.switch_to_window(handle)
              WebDriverWait(driver, 5).until(lambda d: d.execute_script('return document.readyState') == 'complete')
              all_urls.append(driver.current_url)
              driver.close()
              driver.switchTo.window(parent_handle)

Richard MacCutchan

Ссылки скрыты таким образом, чтобы люди не могли их украсть.

0 Ответов