从地图图标中提取信息的Web抓取

2024-10-04 07:34:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我是新来的网页抓取。我想浏览以下网站。在

http://maps.3dhubs.com/

这是一张全球地图,列出了超过7000家供应商。我想知道所有供应商的名字。当你放大一个特定区域时,你会看到红色图标。点击红色图标会弹出一个带有供应商名称的弹出窗口。在

我使用以下代码:

from bs4 import BeautifulSoup
from selenium import webdriver

driver = webdriver.Firefox()
url = 'http://maps.3dhubs.com/'
driver.get(url)
html = driver.page_source
soup = BeautifulSoup(html, "lxml")
suppliers = soup.find_all("div", class_="leaflet-popup-pane")
print (suppliers)
driver.quit() 

代码给出一个空列表作为输出。我需要的信息是在div标签和单张弹出窗格类中,但这些信息只在单击图标后显示。在

如果使用硒可以做到这一点,请告诉我怎么做。尤其是,数据(供应商名称)是在您单击图标时生成的。我不知道如何使用它的文本链接。在

image


Tags: 代码fromimport名称comhttpurlhtml
1条回答
网友
1楼 · 发布于 2024-10-04 07:34:16

我想这个json文件(http://s3-eu-west-1.amazonaws.com/3dhubs/s3fs-public/hubsformap.json)就是你想要的,我在网站的源代码中找到了它。在

var xhr = new XMLHttpRequest();
    L.mapbox.accessToken = 'pk.eyJ1IjoiM2RodWJzbWFwcyIsImEiOiJBSzBFalRzIn0.j8icvSftfyZ4yxJmEgbrRw';
xhr.open('GET', encodeURI('//s3-eu-west-1.amazonaws.com/3dhubs/s3fs-public/hubsformap.json'));

相关问题 更多 >