首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python之browsermob安装

Web测试的时候,我们经常用到浏览器的开发者工具,分析网页元素,样式(Elements),查看资源加载性能(Network),查看控制台信息(Console)甚至client端源码(Sources)等。

Selenium Webdriver能够定位DOM元素,与之交互,读取样式以进行验证等。但是Selenium只处理“结果”,它无法得知浏览器的网络控制台的信息。如果浏览器在渲染出页面之前,从某个站点加载大量资源信息,Selenium无法知道。

解决方案是,可以使webdriver通过proxy访问网络,再收集proxy端的HAR内容,以分析web应用的行为。

下面是一个简单的Demo, Windows, Python36。

下载Browsermob Proxy

Browsermob-Proxy: https://github.com/lightbody/browsermob-proxy

第一步:在github上下载browsermob-proxy 下载好之解压,进入到文件的bin目录找到 browsermob-proxy(这个Linux或者Mac运行文件)browsermob-proxy.bat(这个是Windows运行文件) [下载此文件的目的是需要使用python调用它内部的jar]

第二步:创建在使用pip把browsermob-proxy安装到本地环境中 [如果不安装这个的话,预发布上面下载的文件,就会报错,找不到需要jar]

pip3 install browsermob-proxy

#启停Proxy

server = Server('解压目录\browsermob-proxy.bat')

server.start()

proxy = server.create_proxy()

# 设置浏览器

profile = webdriver.FirefoxProfile()

profile.set_proxy(proxy.selenium_proxy())

driver = webdriver.Firefox(firefox_profile=profile)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181230G0MYQ000?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券