我正在尝试从以下URL下载数据
https://www.nissanusa.com/dealer-locator.html
我想到了这个,但它实际上并没有获取任何数据
import urllib.request
from bs4 import BeautifulSoup
url = "https://www.nissanusa.com/dealer-locator.html"
text = urllib.request.urlopen(url).read()
soup = BeautifulSoup(text)
data = soup.findAll('div',attrs={'class':'dealer-info'})
for div in data:
links = div.findAll('a')
for a in links:
print(a['href'])
我以前做过几次,过去也一直有效。我猜数据是由JavaScript根据用户选择的过滤器动态生成的,但我不确定。我读过Selenium可以用来自动化web浏览器,但我从来没有用过它,我也不知道从哪里开始。最后,我尝试以这种格式获取数据,如下图所示。无论是打印在控制台窗口,或下载到CSV,将是罚款
最后,网站是如何获得数据的?无论我是进入纽约市还是旧金山,地图和数据集相对于应用的过滤器都会发生变化,但是URL根本不会发生变化。提前谢谢
使用selenium打开/导航到页面,然后将页面源代码传递给BeautifulSoup
相关问题 更多 >
编程相关推荐