当前位置: 首页 > 面试题库 >

如何在python selenium-webdriver中获取标头

薛楷
2023-03-14
问题内容

我正在尝试获取Selenium Webdriver中的标题。类似于以下内容:

>>> import requests
>>> res=requests.get('http://google.com')
>>> print res.headers

我需要使用网络驱动Chrome程序,因为它支持Flash和测试网页所需的其他功能。这是我到目前为止在Selenium中拥有的东西:

from selenium import webdriver
driver = webdriver.Chrome()
driver.get('https://login.comcast.net/login?r=comcast.net&s=oauth&continue=https%3A%2F%2Flogin.comcast.net%2Foauth%2Fauthorize%3Fclient_id%3Dxtv-account-selector%26redirect_uri%3Dhttps%3A%2F%2Fxtv-pil.xfinity.com%2Fxtv-authn%2Fxfinity-cb%26response_type%3Dcode%26scope%3Dopenid%2520https%3A%2F%2Flogin.comcast.net%2Fapi%2Flogin%26state%3Dhttps%3A%2F%2Ftv.xfinity.com%2Fpartner-success.html%26prompt%3Dlogin%26response%3D1&reqId=18737431-624b-44cb-adf0-2a85d91bd662&forceAuthn=1&client_id=xtv-account-selector')
driver.find_element_by_css_selector('#user').send_keys('XY@comcast.net')
driver.find_element_by_css_selector('#passwd').send_keys('XXY')
driver.find_element_by_css_selector('#passwd').submit()
print driver.headers ### How to do this?

我还看到了一些其他建议,建议运行整个selenium服务器以获取此信息(https://github.com/derekargueta/selenium-
profiler
)。我如何使用与上述类似的Webdriver来获得它?


问题答案:

不幸的是,你 不能
得到硒webdriver的这些信息,你也将能够在不久的将来,似乎任何时候。一段关于该主题的长时间对话的摘录:

此功能将不会发生。

根据我从讨论中得出的结论,主要原因在于,WebDriver旨在“驱动浏览器”,并且将API扩展到该主要目标之外,这对开发人员而言将导致整体质量和API的可靠性受到影响。

我在许多地方都看到过建议的一种可能的解决方法,包括上面链接的对话,是使用BrowserMob
Proxy
,该代理可用于捕获HTTP内容,并且可与硒一起使用 -尽管链接的示例未使用Python硒API。似乎确实有一个适用于BrowserMob
Proxy的Python包装器,但是由于我从未使用过它,因此我不能保证它的功效。



 类似资料:
  • 问题内容: 我是python的新手,使用Python Flask并生成REST API服务。 我想检查发送给客户端的授权标头。 但是我找不到在flask中获取HTTP标头的方法。 感谢获得HTTP标头授权的任何帮助。 问题答案: 行为就像字典一样,因此你也可以像使用任何字典一样获取标头:

  • 问题内容: 我正在通过其ID查找文本框。我需要获取文本框中已经存在的内容。为此,我正在使用方法,但它返回ID值 文本框中的内容是:Santhosh 我得到的输出是= 代码如下 码: 结果: 问题答案: 您需要打印的结果,当前正在打印对象。 只会获取元素的内部文本。要获取值,您需要使用。

  • 问题内容: 在以下HTML中,我需要使用Selenium Webdriver获取登录值。 我尝试了以下操作,但失败了:- 先感谢您 问题答案: 我还要检查以确保您使用的定位器仅带回一个元素,而不是更多-要检查这一点,请使用来运行相同的事情,并确认仅返回单个结果。 HTML中通常存在隐藏的元素,而您的定位器可能会选择它们。

  • 错误@Line 17:loginpage.java中的WebElement。@Line 12:tc_logineTwin_001.java中的LoginPage。 当我运行测试用例时,我得到以下错误: java.lang.NullPointerException在com.internetbanking.pageobjects.loginpage.(loginpage.java:17)在com.in

  • 问题内容: 我已经向React页面发出了请求,我需要从请求中获取标头。 我通过URL调用页面: http:// localhost / dashboard 然后设置标头,例如authcode = 1234。 然后,我使用以下路线加载页面: 是否有类似this.props.header的东西,我可以在页面构造函数中调用? 问题答案: 您无法通过javascript发送http请求而无法获取当前页面标