如何在发送请求之前查看 headers 请求将包含的内容
How to see what headers a request would contain before sending that request
所以,我的问题可能很愚蠢,但是有没有一种方法可以在发送请求之前检查 headers 每个请求包含的内容。我将 selenium 与 python 一起使用,但问题更多地转向“这样的事情是否可能”,而不是“我如何将 selenium 与 python 一起使用”
重要 我正在寻找一种无需发送请求即可完成此操作的方法。我知道您可以在发送后轻松做到这一点,但是有没有办法在发送请求之前检查 headers 请求?
您可以使用 Selenium Wire,它是 Selenium 的扩展,添加了此功能。要在实际发送请求之前读取 headers,您可以使用拦截器并在 read/processed/printed headers
之后中止请求
使用pip(pip install selenium-wire
)安装后,可以使用如下:
from seleniumwire import webdriver
def interceptor(request):
print(request.headers) # <--- Print the headers that would be sent
request.abort() # <---------- Abort the request so that it does not get sent.
driver = webdriver.Chrome()
driver.request_interceptor = interceptor
driver.get("https://my.test.url.com")
所以,我的问题可能很愚蠢,但是有没有一种方法可以在发送请求之前检查 headers 每个请求包含的内容。我将 selenium 与 python 一起使用,但问题更多地转向“这样的事情是否可能”,而不是“我如何将 selenium 与 python 一起使用”
重要 我正在寻找一种无需发送请求即可完成此操作的方法。我知道您可以在发送后轻松做到这一点,但是有没有办法在发送请求之前检查 headers 请求?
您可以使用 Selenium Wire,它是 Selenium 的扩展,添加了此功能。要在实际发送请求之前读取 headers,您可以使用拦截器并在 read/processed/printed headers
之后中止请求使用pip(pip install selenium-wire
)安装后,可以使用如下:
from seleniumwire import webdriver
def interceptor(request):
print(request.headers) # <--- Print the headers that would be sent
request.abort() # <---------- Abort the request so that it does not get sent.
driver = webdriver.Chrome()
driver.request_interceptor = interceptor
driver.get("https://my.test.url.com")