无法使用beautifulsoup提取下载链接

时间:2017-09-13 12:20:43

标签: python beautifulsoup

我正在尝试从此处获取下载CSV文件链接:https://patents.google.com/?assignee=intel

这是我的代码:

import requests
from bs4 import BeautifulSoup
page = requests.get("https://patents.google.com/?assignee=intel")
soup = BeautifulSoup(page.content, 'html.parser')
soup.find_all('a', class_='style-scope search-results')
soup.find_all('a', class_='style-scope')

但最后2行返回空数组。我在这里缺少什么?

即使这不会返回任何东西:

soup.find(id="resultsLayout")

1 个答案:

答案 0 :(得分:0)

那是因为这些元素是由javascript生成的。您可以使用selenium来获取整个页面源。

以下是使用selenium编辑的代码版本。

from bs4 import BeautifulSoup
from selenium import webdriver

browser = webdriver.Chrome()
browser.get('https://patents.google.com/?assignee=intel')
page = browser.page_source
browser.quit()
soup = BeautifulSoup(page, 'html.parser')
soup.find_all('a', class_='style-scope search-results')
soup.find_all('a', class_='style-scope')

如果您需要澄清,请告诉我。谢谢!