为了账号安全,请及时绑定邮箱和手机立即绑定

使用 Selenium webdriver 和 Python 获得完全呈现的 HTML

使用 Selenium webdriver 和 Python 获得完全呈现的 HTML

沧海一幻觉 2021-06-20 12:34:06
我正在尝试使用 Selenium webdriver 在 Python 中构建一个网络爬虫,但是当我从 webdriver 检索网站源代码时,我无法访问我需要的信息。我认为问题是一旦页面最初从服务器下载,内容就会通过 JavaScript 添加到页面中。当我运行时,browser.page_source我会在添加此内容之前获取页面的源代码。我想知道在添加了 JavaScript 加载的内容后是否可以获取页面的源代码(换句话说,我在使用 Inspect Element 查看页面时看到的内容)。这是我正在使用的基本 Python 脚本:from selenium import webdriverbrowser = webdriver.Chrome()browser.get("https://www.opportunities.auckland.ac.nz")print(browser.page_source)当我运行上面的脚本时,我得到了在浏览器中查看页面源时看到的页面的源代码(即,当使用检查元素查看代码时,没有可见的附加内容)。我尝试过的事情time.sleep(10)在我访问源时页面未完全加载的情况下添加到各个位置。get_attribute("innerHTML")在身体上使用。使用execute_script()让JS运行。使用execute_script()使JS脚本运行一个接一个。如果有人能首先告诉我这是否可行,以及它是否为我指明了正确的方向,那就太好了。谢谢。更新 1尝试 Piotrek 的解决方案时,我得到以下输出:Warning (from warnings module):  File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/phantomjs/webdriver.py", line 49warnings.warn('Selenium support for PhantomJS has been deprecated, please use headless 'UserWarning: Selenium support for PhantomJS has been deprecated, please use headless versions of Chrome or Firefox instead<html><head></head><body></body></html>不幸的是,这似乎不起作用。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 101 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号