【发布时间】:2023-12-20 13:55:02
【问题描述】:
下面的代码旨在用于扫描整个西班牙,从可点击的蓝色点(仅在缩放的黑暗部分可见)中获取信息。因此,如果您运行下面的代码,它将尝试单击蓝点簇,但会失败,因为它们都在彼此之上并且靠得太近。
因此我想知道是否可以放大蓝点簇,使它们彼此分开,单击所有点,再次缩小并继续扫描。
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--incognito")
chrome_options.add_argument("--start-maximized")
driver = webdriver.Chrome(options=chrome_options)
codes = []
driver.get('https://geoportal.minetur.gob.es/VCTEL/vcne.do')
for x in range(2):
driver.find_element_by_xpath('//* [@id="OpenLayers.Control.PanZoomBar_59_zoomin"]').click()
for x in range(4):
time.sleep(1)
driver.find_element_by_xpath('//*[@id="OpenLayers.Control.PanZoomBar_59_panup"]').click()
for x in range(3):
time.sleep(1)
driver.find_element_by_xpath('//*[@id="OpenLayers.Control.PanZoomBar_59_panright"]').click()
for x in range(2):
driver.find_element_by_xpath('//*[@id="OpenLayers.Control.PanZoomBar_59_zoomin"]').click()
for x in range(2):
time.sleep(1)
driver.find_element_by_xpath('//*[@id="OpenLayers.Control.PanZoomBar_59_pandown"]').click()
for x in range(9):
driver.find_element_by_xpath('//*[@id="OpenLayers.Control.PanZoomBar_59_zoomin"]').click()
for x in range(60000):
for x in range(273000):
time.sleep(2)
towers = driver.find_elements_by_css_selector("div#map image[id*='OpenLayers.Geometry']")
for tower in towers:
tower.click()
codes.append(driver.find_element_by_xpath('//*[@id="divDatosFeatureInfo"]/table/tbody/tr[3]/td/div/p').text)
for x in range(14):
time.sleep(1)
driver.find_element_by_xpath('//*[@id="OpenLayers.Control.PanZoomBar_59_panright"]').click()
【问题讨论】:
标签: python selenium interactive