首页 > 其他分享 >HAR文件

HAR文件

时间:2024-08-01 11:20:34浏览次数:6  
标签:__ 文件 list item HAR har

简介

HAR(HTTP Archive format),是一种或 JSON 格式的存档格式文件,通用扩展名为 .har。Web 浏览器可以使用该格式导出有关其加载的网页的详细性能数据。

 

使用场景

在开发过程中,有的场景不好复现,比如访问速度慢,请求失败等,由于设备限制,对于我们来说精确的收集数据以及定位问题有一定难度。

比如,作为开发我们可以很熟练的按下F12查看请求,但如果是作为技术支持,没有办法长时间占用对方(客户)的电脑进行问题排查。HAR则可以帮助我们收集所有的HTTP请求


保存 HAR 文件

我们以chrome打开 www.baidu.com/ 为例 具体步骤:

  • 在菜单中打开“开发人员工具”(“菜单”>“更多工具” >“开发人员工具”),您也可以在键盘上按 F12 (或 Fn-F12)。
  • 打开“网络”标签页。
  • 在“网络”标签页的左上角,找到一个圆形按钮。 确保该按钮是红色的。如果显示灰色,请点击一次以开始 录制。
  • 开启“保留日志”**。
  • 重现问题。
  • 要保存记录的内容,请在网格上右键点击,然后选择 **“将内容保存为 HAR”。
  • 选择保存位置,该位置会生成一个名为 www.baidu.com.har 的文件。

打开 HAR 文件

  1. chrome 打开开发者工具,切换到“网络”标签页,将HAR文件托拽放入即可。

  2. 使用其他抓包工具也可以, 例如Charles,fiddler  Charles中操作流程: File > Import 选择导出的xxx.har文件即可
   使用Python解析har文件数据
import json
from haralyzer import HarParser



"""解析har数据"""

def main():
    har_parser = HarParser.from_file(r'D:\Users\Desktop\数据\baidu.har')
    data = har_parser.har_data
    entries = data.get('entries')
    for entry in entries:
        req = entry['request']
        url = req['url']
        if 'task/list' not in url:
            continue

        body = entry['response']
        if 'text' not in body['content']:
            continue

        content = body['content']['text']
        info = json.loads(content)
        print('解析的数据:', info)
        list = info.get('data').get('list')
        for item in list:
            print(f'渠道ID:{item["channel_id"]} 渠道名称:{item["channel_name"]} 文章标题:{item["article_title"]}')



if __name__ == '__main__':
    main()

 

 

 

                                         

标签:__,文件,list,item,HAR,har
From: https://www.cnblogs.com/xingxia/p/18336263/har

相关文章

  • 【Dash】Dash链接 csv/excel 文件
    一、Dash如何连接csv数据?Thereareamanywaystoadddatatoanapp:APIs,externaldatabases,local.txt files,JSONfiles,andmore.Inthisexample,wewillhighlightoneofthemostcommonwaysofincorporatingdatafromaCSVsheet.#Importpackages......
  • 4、vue3总组件/入口文件/路由设置
    1、安装element-plus依赖包npmielement-plus 2、项目主组件修改(App.vue)<scriptlang="ts"setup>import{ElConfigProvider}from'element-plus'import{ElDialog}from"element-plus"//将ElementPlus的语言设置为中文importzhCnfrom&......
  • Charles证书一年过去后怎么处理?
    1、删除证书windows--》设置--》搜索(管理证书)--》右键删除2、重置证书3、重新安装证书  安装完后重启charles......
  • 【全网独家】OpenCV 图像特征检测与描述(Harris 角点检测、Shi-Tomasi 角点检测、SIFT
    OpenCV图像特征检测与描述在图像处理和计算机视觉中,特征检测和描述是非常重要的任务。本文将介绍几种常用的特征检测和描述方法:Harris角点检测、Shi-Tomasi角点检测、SIFT和SURF。目录介绍应用使用场景原理解释算法原理流程图及解释应用场景代码示例实现部署......
  • 向版权中心提交代码PDF文件时总是无法上传成功,怎么回事?
    在实际的补正提交的操作中遇到了该问题一开始找不到原因上传了十多遍都不行都是传完之后一闪而过显示红色叉号后来发现初次提交的代码pdf却可以正常上传推测是pdf本身格式差异,不符合系统提交要求本次提交的pdf是用wps的“输出为pdf”功能导出的才想到以前也遇到过wps输出......
  • MySQL 中 Varchar(50) 和 varchar(500) 有什么区别?
    问题我们在设计表结构的时候,设计规范里面有一条如下规则:对于可变长度的字段,在满足条件的前提下,尽可能使用较短的变长字段长度。为什么这么规定,主要基于两个方面基于存储空间的考虑基于性能的考虑网上说Varchar(50)和varchar(500)存储空间上是一样的,真的是这样吗?基于性......
  • 高效可靠安全的大文件传输系统,了解一下!
    在数字化转型的浪潮中,数据已成为企业不可或缺的宝贵资源,而高效的文件传输机制则是保障数据流通的基石。无论是企业还是个人,经常需要处理大文件、远距离文件的传输任务,需要文件传输系统来处理。在远距离传输大型文件时,我们面临诸多挑战,如网络速度慢、数据量大、电子邮件文件大小......
  • 不知道如何通过OPC文件传输管控,助力企业提高效率与竞争力?
    OPC(OpenPlatformCommunications)是一种用于工业自动化和控制系统中设备与软件之间数据交换的通信协议。以下是一些会涉及到OPC文件传输的行业:工业自动化:用于实现设备、控制系统和软件之间的数据交换,提高生产效率和灵活性。楼宇自控:用于设备控制和数据通信,确保设备之间的互操作......
  • 嵌入式文件系统介绍合集:FAT32、exFAT、ext3、ext4、jffs2、yaffs2、ubifs、squashf
    liwen012024.07.21前言在嵌入式Linux系统中常用的文件系统有:FAT32、exFAT、ext3、ext4、jffs2、yaffs2、ubifs、squashfs。不管是在文件系统类型选型还是嵌入式应用软件面试中,关于文件系统的问题都会经常被提起。就目前而言,并没有哪款文件系统可以适用于所有应用场景,它们各......
  • 在 Python Langchain 应用程序的 Docker 文件中运行 Ollama
    背景信息我有一个使用langchain和Ollama的Python应用程序。在本地运行这个程序效果非常好,因为我的机器上运行着Ollama客户端。我想要做的是在无服务器平台(例如GCR)上托管这个应用程序,为了做到这一点,我需要容器化应用程序。这对于应用程序的python端来说很容......