我有一个使用requests分析和处理网页文本的应用。但是,在此页面上似乎无法使用Angular:https://bio.tools/bowtie构建的页面似乎无法正常工作,因为源HTML与实际内容不同。我正在尝试收集页面(10.1186 / gb-2009-10-3-r25)上引用的DOI,但是当请求选择HTML源时,DOI不在那里。
我听说Google能够解析使用javascript生成的页面。他们是如何做到的呢?使用python查看DOI信息的任何提示吗?
您可能需要一个为您运行http响应的javascript的引擎(就像Internet浏览器一样)。您可以为此使用selenium,然后使用beautifulsoup解析返回的html。
示例:
from selenium import webdriver
from bs4 import BeautifulSoup
url = "https://bio.tools/bowtie"
path = "path/to/chrome/webdriver"
browser = webdriver.Chrome(path) # Can also be Firefox, etc.
browser.get(url)
html = browser.page_source
soup = BeautifulSoup(html, 'html.parser')
...