You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python使用browsermobproxy+selenium抓谷歌HAR文件报AttributeError排查

问题诱因
  • 根因是类初始化方法拼写错误:Python类的实例构造方法固定命名为__init__(前后各两个下划线),代码里错写为__int__,执行proxy = ProxyManger()实例化对象时,根本不会触发这个方法内的赋值逻辑,self.__server、self.__client两个属性从未被创建。由于Python对双下划线开头的类属性会做名称修饰,自动重命名为_类名__属性名格式,后续调用start_server()访问self.__server时,就会抛出_ProxyManger__server属性不存在的错误。
  • 附带兼容问题:Selenium 4.0及以上版本中,webdriver.Chrome()构造方法已移除chrome_options入参,继续使用会触发参数错误,需替换为options入参。
修复方案

修改两处错误即可:

  1. 把类中错写的def __int__(self):修正为def __init__(self):
  2. 把启动Chrome的代码driver = webdriver.Chrome(chrome_options=options)修正为driver = webdriver.Chrome(options=options),建议补充driver.quit()逻辑避免浏览器进程残留。

修复后的完整可运行代码:

import pprint
import time

from browsermobproxy import Server
from selenium import webdriver

class ProxyManger:

    __BMP = "C:/Users/Ender/Desktop/browsermob-proxy-2.1.4/bin/browsermob-proxy.bat"

    def __init__(self):
        self.__server = Server(ProxyManger.__BMP)
        self.__client = None

    def start_server(self):
        self.__server.start()
        return self.__server

    def start_client(self):
        self.__client = self.__server.create_proxy(params={"trustAllServers": "true"})
        return self.__client

    @property
    def client(self):
        return self.__client
    @property
    def server(self):
        return self.__server

if __name__ == "__main__":
    proxy = ProxyManger()
    server = proxy.start_server()
    client = proxy.start_client()
    client.new_har("google.com")
    print(client.proxy)
    options = webdriver.ChromeOptions()
    options.add_argument("--proxy-server={}".format(client.proxy))
    driver = webdriver.Chrome(options=options)
    driver.get("https://www.google.com/")
    time.sleep(3)

    pprint.pprint(client.har)
    driver.quit()
    server.stop()

修正后实例化类时会正常初始化服务端、客户端属性,不会再触发属性不存在的报错,浏览器可正常通过代理启动访问目标站点,输出抓取到的HAR内容。

内容的提问来源于stack exchange,提问作者E.MRZ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 19:15:46