我正在使用Selenium WebDriver工具,我想知道这个工具是否提供了一种捕获提交表单时生成的POST数据的方法。我正在使用django测试框架来测试我的数据是否在后端正确处理,我想使用Selenium来验证表单是否产生了预期的数据。
答案 0 :(得分:4)
您将不得不在中间放置代理并监控该代理。您可以使用http://pypi.python.org/pypi/browsermob-proxy。允许您将代理详细信息传递给WebDriver,然后您可以提取显示所有网络流量的HAR文件。
您还可以使用HARPy获取所需信息
BrowserMob代理和Selenium的示例
from browsermobproxy import Server
server = Server("path/to/browsermob-proxy")
server.start()
proxy = server.create_proxy()
from selenium import webdriver
profile = webdriver.FirefoxProfile()
profile.set_proxy(proxy.selenium_proxy())
driver = webdriver.Firefox(firefox_profile=profile)
proxy.new_har("google")
driver.get("http://www.google.co.uk")
proxy.har # returns a HAR JSON blob
proxy.stop()
driver.quit()