我正在尝试使用 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>不幸的是,这似乎不起作用。
添加回答
举报
0/150
提交
取消