我正在使用请求和BeautifulSoup从网页中检索和提取信息。
但是,当我调用requests.get(url)然后打印出文本结果时,它与我在网页上'检查元素'时看到的不一样。缺少多个HTML代码部分,某些代码在span中有“正在加载”等。
我怀疑这意味着requests.get()函数在完全加载之前从页面中提取数据。
有办法防止这种情况吗?
谢谢。
正如评论中所提到的,您通过检查在浏览器中看到的是可能已使用javascript呈现的HTML。
你的代码:
requests.get(url)
是来自服务器的原始响应。 javascript尚未呈现并为您提供动态创建的HTML。
如评论中所述,如果您需要程序来呈现此页面,您可能需要尝试Selenium,PhantomJS,QT4或Ghost。
硒:https://pypi.python.org/pypi/selenium
PhantomJS:https://github.com/elias-winberg/phantomjs-python