fiddler与python post请求笔记

python3

1.fiddler抓包,若textview中为一串字符串,如下图所示:

则我们构造的data,应为如下格式:

    from urllib import parse
    import urllib.request
    post_data =     {'flag':1,'BLC':0,'BLC_level':8,'light_restrain':1,'light_restrain_mode':0,'light_restrain_level0':8,
'light_restrain_level1':8,'PFR':50,'formatType':'P','MVR':0,'MHR':0,
'WDR':0,'WDR_level':8,'DDS':0,'DS':0,'defog_state':0,'defog_level':8,'Distortion_correction_mode':0,
'Distortion_correction_value':1}


    post_data = parse.urlencode(post_data).encode('utf-8')

    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36'
    }
    
    url = "http://*****"
    resp = urllib.request.Request(url= url,data = post_data , headers=headers)#post_data位json编码
    response = urllib2.urlopen(resp)

 2.若post数据为json格式,如下图所示 :

 

 由于POST的数据是json格式的,需要使用json.dumps(post_data)将post_data转换为字符串,再进行编码

     from urllib import parse
     import urllib.request
     post_data = {"SceneMode":scene_str,
    "BasicCMDConf":
    {"MVR_":0,"MHR_":0,"BLC_":0,"BLC_level_":8,"WDR_":0,
    "WDR_mode_":0,"WDR_level_":8,"light_restrain_":mode,
    "light_restrain_mode_":mode12,"light_restrain_level0_":level,
    "light_restrain_level1_":8,"DDS_":0,"DS_":0,
    "contrast_strength_":1,"defog_state_":0,"defog_level_":8,
    "Distortion_correction_mode":"0","Distortion_correction_value":"1"},
    "AEConf":{"AEMode_Select_":0,"Iris_select_":0,
    "IrisMode_ws":2,"Irislevel_ws":9,"Irisdeflevel_ws":99,
    "C2B_Switch_Select_":2,"IRC_Time_":20,"ICR_Sens_":0,"IR_light_":"null",
    "Fill_light_":0,"maxAE_Select_":48,"ShutterSpeed_":10,
    "startShutterSpeed_":15,"endShutterSpeed_":8,"AEGain_":1,
    "PowerMode_":0,"PowerValue_":99},
    "General":{"ImgBrightness_G_":78,"EdgeStrength_G_":128,
    "ImgHue_G_":128,"ImgContrast_G_":128,"ImgSaturation_G_":128,
    "ImgDenoise_G_":128},"WBConf":{"WBM_":0,"WBRG_":0,"WBBG_":0}}

    headers = {
     'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.125 Safari/537.36'
    }
    
    url = "http://*****"

    resp = urllib.request.Request(url= url,data = json.dumps(post_data).encode('utf-8') , headers=headers)#post_data位json编码
    response = urllib.request.urlopen(resp)

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Fiddler是一款常用的抓包工具,可以用来捕获HTTP/HTTPS请求和响应数据。而Python是一种流行的编程语言,可以用来编写各种应用程序。 如果想使用Fiddler抓包POST请求,可以按照以下步骤进行: 1. 打开Fiddler,点击菜单栏的Tools -> Options,进入Options窗口。 2. 在Options窗口中,选择HTTPS选项卡,勾选“Capture HTTPS CONNECTs”和“Decrypt HTTPS traffic”,然后点击“Actions”按钮,选择“Export Root Certificate to Desktop”,将证书保存到桌面。 3. 在Python中,可以使用requests库来发送POST请求,并且可以通过设置代理来使用Fiddler进行抓包。以下是一个示例代码: import requests proxies = { "http": "http://127.0.0.1:8888", "https": "http://127.0.0.1:8888", } data = { "username": "test", "password": "123456", } response = requests.post("http://example.com/login", data=data, proxies=proxies) print(response.text) 其中,proxies参数指定了HTTP和HTTPS的代理地址,即Fiddler的监听地址。data参数指定了POST请求的数据,可以根据实际情况进行修改。最后,使用response.text可以获取响应数据的文本内容。 希望以上内容对您有所帮助! ### 回答2: FiddlerPython是两个非常有用的工具,可以用来对网络请求进行分析和调试。Fiddler是一款免费的网络抓包工具,可以截获电脑与服务器之间的数据流,既可以截取HTTP请求,也可以截取HTTPS请求。而Python是一门高级编程语言,具有强大的开发能力,可以用来对网络请求进行发送和接收,并处理响应数据。 Fiddler的使用可以帮助我们对网络请求进行分析和排查,尤其是在进行Web开发过程中,可以通过Fiddler来对Web应用进行调试。同时,Fiddler还可以定制过滤规则,可以过滤掉我们不想要的请求,保证我们获取到的数据更加准确。 在使用Fiddler抓包后,我们可以利用Python来进行网络请求的处理。Python中的requests库是一个非常优秀的HTTP请求库,可以帮助我们进行网络请求的发送和接收,并支持各种HTTP方法,如GET、POST、PUT、DELETE等。对于POST请求,我们可以使用requests库中的post()方法,可以向服务器发送包含数据的请求,并可以对返回的响应数据进行处理和解析。 利用Python和requests库,我们可以结合Fiddler抓包进行如下操作: 1. 使用Fiddler抓取需要处理的请求数据,并保存为对应的Session文件。 2. 利用Python调用requests库读取Session文件中的请求信息,并发送请求。 3. 对请求的响应数据进行处理和解析,并根据需求进行相应的操作。 需要注意的是,在处理请求的过程中,我们需要保证请求的完整性和正确性,同时需要对处理过程进行充分的测试和调试,确保代码的稳定和可靠性。 总之,利用FiddlerPython进行网络请求的抓取和处理是一种非常有效的方式,可以帮助我们进行Web开发和网络调试,提高我们的工作效率和开发质量。 ### 回答3: Fiddler是一种用于网站调试的免费工具,它可以助您进行HTTP/HTTPS调试与性能测试,是Web开发的一个重要利器。在使用Fiddler进行网站调试时,由于Fiddler可以截取和查看所有HTTP/HTTPS请求和响应的内容,因此,我们可以通过使用Fiddler抓包的方式,查看网站中客户端和服务器之间传递的数据, 非常方便网站开发以及安全研究人员对网站数据的监控、分析和攻击等操作。 在使用Fiddler进行抓包时,特别需要了解HTTP协议,它的结构和相关的请求和响应的头信息和实体部分如何组成,观察Fiddler中的Session列表,熟悉各个参数的意义,方便分析和监控数据包。同时,Fiddler也提供了很多高级功能,比如断点调试、自定义规则等等,大大增强了Fiddler作为一个强大调试工具的功能。 在用Fiddler抓包之后,根据需要,我们可以将抓到的数据保存到硬盘上的一个文件类似于.txt、.xml、.json或.word等格式,可以方便后续的数据分析和处理。在Python中,我们可以使用fiddler抓取的包,通过分析处理把数据导入到数据库中或者进一步的对数据进行整理和处理。 Python中也有类似的抓包工具,比如requests, httplib, httplib2等等,其中最常用的就是requests库。requests库是Python中一个用于HTTP网络协议通信的第三方库,非常方便实用。与Fiddler类似,通过requests库可以实现在Python程序中对HTTP/HTTPS请求进行监控、分析和控制等操作。同时,requests库也拥有很多高级功能,比如会话(session)、连接池、证书验证等等,并且可以在Python中很方便地进行数据处理和操作。 总体来看,FiddlerPython中的抓包工具都非常强大和有用。在日常工作和学习中,它们可以帮助我们快速获取HTTP/HTTPS网络协议的数据,并且对这些数据进行分析、调试和操作,有利于Web开发和安全研究人员的工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值