python selenium-get(ctrl-u)等效页面\源代码
为了便于比较,我需要获得与浏览器相当的ctrl-u。page\u source 是否可以使用python selenium-get(ctrl-u)等效页面\源代码,python,selenium,Python,Selenium,为了便于比较,我需要获得与浏览器相当的ctrl-u。page\u source 是否可以使用浏览器执行脚本或其他方法 我尝试过各种方法,如browser.get(查看源代码:https://www.example.com)但还没有找到解决方案。如果我没说错的话,您希望比较原始htmlctrl+U和呈现的htmlbrowser.page\U source,您可以使用请求 import requests originalHTML = requests.get('http://...').text
浏览器执行脚本或其他方法
我尝试过各种方法,如browser.get(查看源代码:https://www.example.com)
但还没有找到解决方案。如果我没说错的话,您希望比较原始htmlctrl+U
和呈现的htmlbrowser.page\U source
,您可以使用请求
import requests
originalHTML = requests.get('http://...').text
print(originalHTML)
或者您可以为查看源代码:
url = 'https://..../'
browser.get(url)
renderedHTML = browser.page_source
# open blank page because JS cannot open special URL like `view-source:`
browser.execute_script("window.open('about:blank', '_blank')")
# switch to tab 2
browser.switch_to_window(browser.window_handles[1])
browser.get("view-source:" + url)
originalHTML = originalHTML = browser.find_element_by_css_selector('body').text
# switch to tab 1
#browser.switch_to_window(browser.window_handles[0])
如果我没说错的话,您希望比较原始htmlctrl+U
和呈现的htmlbrowser.page\U source
,为此您可以使用请求
import requests
originalHTML = requests.get('http://...').text
print(originalHTML)
或者您可以为查看源代码:
url = 'https://..../'
browser.get(url)
renderedHTML = browser.page_source
# open blank page because JS cannot open special URL like `view-source:`
browser.execute_script("window.open('about:blank', '_blank')")
# switch to tab 2
browser.switch_to_window(browser.window_handles[1])
browser.get("view-source:" + url)
originalHTML = originalHTML = browser.find_element_by_css_selector('body').text
# switch to tab 1
#browser.switch_to_window(browser.window_handles[0])
这对我来说很好,我想这是引用的问题
browser.get('https://www.example.com')
browser.page_source
您也可以使用browser.execute\u script()
这对我来说很好,我想这是引用的问题
browser.get('https://www.example.com')
browser.page_source
您也可以使用browser.execute\u script()
browser.get('view-source:https://www.example.com'); html=browser.page\u source
…。不将(ctrl-u)文本返回到html
变量中…。。另外,这需要在一个按钮点击时发生,该按钮没有提供地址来将查看源代码:
附加到开头。我可以在单击按钮后提取url…并附加查看源代码:
,然后重新加载url…但这也需要加载相同的页面twice@Rhys,你能用准确的场景和问题描述更新你的问题吗?我能添加的只是一个测试的示例站点。最简单的问题是…将所有ctrl-u文本放入一个变量(不向url添加视图源代码)下面是示例站点https://www.blsst.co.nz/
…。一个可能支持您的答案的方法是物理调用ctrl+u快捷键,从而在不重新加载页面的情况下打开一个新选项卡。但我不知道该怎么做。然后以某种方式将显示的html复制到变量中参见脚本中的注释回答JS无法打开特殊URL,如查看源:
browser.get('view-source:https://www.example.com'); html=browser.page\u source
…。不将(ctrl-u)文本返回到html
变量中…。。另外,这需要在一个按钮点击时发生,该按钮没有提供地址来将查看源代码:
附加到开头。我可以在单击按钮后提取url…并附加查看源代码:
,然后重新加载url…但这也需要加载相同的页面twice@Rhys,你能用准确的场景和问题描述更新你的问题吗?我能添加的只是一个测试的示例站点。最简单的问题是…将所有ctrl-u文本放入一个变量(不向url添加视图源代码)下面是示例站点https://www.blsst.co.nz/
…。一个可能支持您的答案的方法是物理调用ctrl+u快捷键,从而在不重新加载页面的情况下打开一个新选项卡。但我不知道该怎么做。然后以某种方式将显示的html复制到一个变量中参见脚本中的注释回答JS无法打开特殊的URL,如查看源代码:
谢谢,我尝试了这个。它会在html结尾处返回附加数据,并返回不正确的制表符、间距和换行符。因为它返回的是unicode,所以会得到换行符和制表符。如果换行符和制表符是您唯一的问题,您可以编写一个帮助函数来删除它们。您可以相应地使用split()或strip()。记住这一点很好。如果您检查documentElement.outerHTML
与ctrl+u源代码的对比,您将在页面底部看到其他代码。对于上面的例子。我猜还有更多的例子。汉克斯,我试过这个。它会在html结尾处返回附加数据,并返回不正确的制表符、间距和换行符。因为它返回的是unicode,所以会得到换行符和制表符。如果换行符和制表符是您唯一的问题,您可以编写一个帮助函数来删除它们。您可以相应地使用split()或strip()。记住这一点很好。如果您检查documentElement.outerHTML
与ctrl+u源代码的对比,您将在页面底部看到其他代码。对于上面的例子。我猜还有更多的例子