python实现HAR
时间: 2023-12-04 15:04:11 浏览: 96
HAR(HTTP Archive)是一种格式,可以记录浏览器与服务器之间的交互过程。以下是一个简单的Python程序,用于捕获网络流量并将其保存为HAR格式:
```python
import json
import os
import sys
import time
from browsermobproxy import Server
from selenium import webdriver
server_path = "/path/to/browsermob-proxy"
chrome_driver_path = "/path/to/chromedriver"
server = Server(server_path)
server.start()
proxy = server.create_proxy()
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--proxy-server={0}".format(proxy.proxy))
driver = webdriver.Chrome(chrome_driver_path, chrome_options=chrome_options)
proxy.new_har("example.com")
driver.get("https://example.com")
time.sleep(5) # Wait for page load
har = proxy.har
with open("example.har", "w") as har_file:
json.dump(har, har_file)
driver.quit()
proxy.close()
server.stop()
```
该程序使用browsermob-proxy和Selenium WebDriver来启动一个Chrome浏览器实例,并通过代理服务器捕获网络流量。然后,它将HAR格式数据保存到名为“example.har”的文件中。
请注意,您需要先安装browsermob-proxy和Selenium WebDriver。您还需要将“/path/to/browsermob-proxy”和“/path/to/chromedriver”替换为实际的文件路径。
阅读全文