Py学习  »  Python

python selenium-get(ctrl-u)等价的页面源代码

Rhys • 4 年前 • 569 次点击  

我需要得到 ctrl-u键 相当于 browser.page_source 为了比较的目的。

这有可能吗 browser.execute_script 或者其他方法?

我试过各种方法 browser.get(view-source:https://www.example.com) 但还没找到解决办法。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/50096
 
569 次点击  
文章 [ 2 ]  |  最新文章 4 年前
ewwink
Reply   •   1 楼
ewwink    5 年前

如果我没有错,你想比较原始的html ctrl+U 和呈现的html browser.page_source ,您可以使用 requests

import requests

originalHTML = requests.get('http://...').text
print(originalHTML)

或者可以为 view-source:

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])
Mahesh Kumaran
Reply   •   2 楼
Mahesh Kumaran    5 年前

对我来说很好,我想是报价的问题,

browser.get('https://www.example.com')
browser.page_source

您也可以使用 browser.execute_script()

browser.execute_script('return document.documentElement.outerHTML')