无法从网页获取csv链接

时间:2020-08-18 15:49:07

标签: python-3.x web-scraping beautifulsoup

我努力抓取网页以提取csv链接。我使用了硒webdriver获取bs4可以使用的Page源。

driver = webdriver.Chrome(executable_path=ChromeDriver_Path, options=options)
driver.get("https://www.apple.com/covid19/mobility")
soup = BeautifulSoup(driver.page_source, "html.parser")
Link = soup.select('#download-card > div.download-button-container > a')[0].text

当我打印(链接)时,它返回一个空字符串。

1 个答案:

答案 0 :(得分:0)

您无法使用BeautifulSoup做到这一点,因为它不支持javascript。并且该特定页面主要使用javascript构建。

您可以改用硒。像这样:

>>> from selenium.webdriver.common.by import By
>>> driver.find_element(By.ID,'download-card').find_element_by_class_name('download-button-container').find_elements_by_tag_name('a')[0].get_attribute('href')
'https://covid19-static.cdn-apple.com/covid19-mobility-data/2014HotfixDev17/v3/en-us/applemobilitytrends-2020-08-16.csv'

您可能会使它更漂亮。这只是快速又肮脏。