python实现Content-Type:application/octet-stream

这篇具有很好参考价值的文章主要介绍了python实现Content-Type:application/octet-stream。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Content-Type:application/octet-stream

这种传输用于图片|文本传输:

我也是在操作河马云手机中,往云机传输图片和文本txt遇到的。
“”"=============================================================="""
接下来python实现下:
首先要先安装:requests-toolbelt

pip install requests-toolbelt

图片:

# -*- coding: utf-8 -*-
# @Author  : Codeooo
# @Time    : 2021/10/22



import random
from base64 import b64decode

import requests
from requests_toolbelt.multipart.encoder import MultipartEncoder

def up(base64_img):
    url= 'https://hzsite.longene.com.cn/cardgroup!uploadChuckFile'
    headers={
        "Cookie":"JSESSIONID=1D70333FF886DDE6EDEA845EB8A7FDCA",
        # "Host":"hzsite.longene.com.cn",
        # "Origin":"https://hzsite.longene.com.cn",
        # "Pragma":"no-cache",
        # "Referer":"https://hzsite.longene.com.cn/js/webWorker_upload.js",
        "User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36"
    }

    multipart_encoder = MultipartEncoder(
        fields={
            "chuckSize":"1",
            "currentChuck":"1",
            "fileName": "1.png",
            # "Content-Type": "application/octet-stream",
            # "file": ("1.png", open('C:\\Users\Administrator\Desktop\index.png','rb'), 'application/octet-stream')
            "file": ("1.png",  b64decode(imgBase64(base64_img)), 'application/octet-stream')
        },
        # boundary = '-----------------------------' + "WebKitFormBoundary" + str(random.randint(1e28, 1e29 - 1))
        boundary = '----' + "WebKitFormBoundary" + generate_code()
    )

    headers['Content-Type'] = multipart_encoder.content_type
    print(multipart_encoder.content_type)

    result = requests.post(url, headers=headers, data=multipart_encoder)
    print(result.status_code)
    print(result.text)


def imgBase64(base64_img):
    return base64_img.replace("data:image/png;base64,","")



def generate_code(code_len = 16):
  all_char = '0123456789qazwsxedcrfvtgbyhnujmikolpQAZWSXEDCRFVTGBYHNUJIKOLP'
  code = ''
  for _ in range(code_len):
    num = random.randint(0,len(all_char)-1)
    code += all_char[num]
  return code


base64_img = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH0AAAB9AQAAAACn+1GIAAABxElEQVR4Xr2VsY20MBCFBzlwtjRgyW04c0tsA7vQALTkzG1YcgNL5sDy/M9wp9NF4z85hBD6JJiZx3sD8e+j0N+ARjRHImebViupIeB51+bl6VnswXkIOHUEe0ZU5J2GQVQc6zPa/wBB7S736yBAp84eJX/8T+sCIHq4vF/nt0ACgNINejhafP7+DCJIU0nvks+SN7ZjAI8a0mYK6aGHQCPeIJ5XW8xcruFE4Ori6UXppe3GfVoZ+DqxeQd6cqXbQTLgj1NbsKuG6t2nImDGrYEXwJrOI6BLrtMcDLk0xV5WBIwo6Lx6XjXfLxVBI7O4tHgUrzQGYIFd88mwD1S8/SGA1r1j3kgD17t1EUCPnXglDFcXuiUUAAZqjqH9FiFMd5AIONQ5phkBcvwZBMVyMQu0p3z2zMmgaWSOV1dfCHccAw7pUbvGMkh0tS6CaznVd2EO+atTGeQrENxc3kJXXQSQEJtm9eaJslcaRHDtD7tFqJ7blz8E0LcUoWZ96Lxf08oAu7DHzn60uq0tA9f1O6GKJ/K99RFwlDpzepA9buOOgEhT4bP0GA0Bz0eAtWniLvwQ6H9CbME0x7roXlYE/Pv4I/AP3E++ybG1pKEAAAAASUVORK5CYII='
up(base64_img)

文本:文章来源地址https://www.toymoban.com/news/detail-595438.html

# -*- coding: utf-8 -*-
# @Author  : Codeooo
# @Time    : 2021/10/22



import random
from base64 import b64decode

import requests
from requests_toolbelt.multipart.encoder import MultipartEncoder

def up(base64_img,fileName):
    # url= 'https://ecsite.longene.com.cn/cardgroup!uploadChuckFile'
    url= 'https://hzsite.longene.com.cn/cardgroup!uploadChuckFile'

    headers={

        "Accept-Encoding": "gzip, deflate, br",
        "Cookie": "JSESSIONID=1D70333FF886DDE6EDEA845EB8A7FDCA",
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36"
    }

    multipart_encoder = MultipartEncoder(
        fields={
            "chuckSize":"1",
            "currentChuck":"1",
            "fileName": f"{fileName}",
            "Content-Type": "application/octet-stream",
            "file": ("1.txt",  str.encode(txt), 'application/octet-stream')
        },
        boundary = '-----------------------------' + str(random.randint(1e28, 1e29 - 1))
    )

    headers['Content-Type'] = multipart_encoder.content_type

    result = requests.post(url, headers=headers, data=multipart_encoder)
    print(result.status_code)
    print(result.text)


def imgBase64(txt):
    return  str.encode(txt)


txt = '136xxxx7120----hpril64810'
fileName = '1.txt'
up(txt,fileName)


到了这里,关于python实现Content-Type:application/octet-stream的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Content type ‘application/x-www-form-urlencoded;charset=UTF-8‘ not supported错误的多种解决方法及说明Content-Type

    今天写好 导入hive表 的接口,如下代码所示:

    2024年02月08日
    浏览(43)
  • No converter for [class java.util.LinkedHashMap] with preset Content-Type ‘application/vnd.ms-excel;

    通常解决方案参考 https://blog.csdn.net/qq_42651201/article/details/120710224 controller处理逻辑有问题,导致报错,然后被全局异常捕捉,再然后返回了错误信息 也就是说本来没有返回值的方法,最终有返回值class com.xxx.dto.Result ,就会抛出以上错误。 把controller里面的报错解决,让逻辑正

    2023年04月09日
    浏览(53)
  • Did not attempt to load JSON data because the request Content-Type was not ‘application/json‘

    在使用flask-restfull进行API开发的时候。一旦我使用类似下面的代码从url或者form中获得参数就会出现报错:Did not attempt to load JSON data because the request Content-Type was not ‘application/json’。 代码如下: 解决方法如下

    2024年02月16日
    浏览(65)
  • Python爬虫关于网站上传图片: Content-Type: multipart/form-data; boundary=----WebKitFormBoundary****************

    我们在使用python爬虫, 例如使用requests想服务器发送请求,模拟上传图片的时候会遇到Reqest Headers 中有一个:Content-Type: multipart/form-data; boundary=----WebKitFormBoundary****************,  尝试这从其它返回的接口中也找不到它, 我们也一度怀疑是否是在前端JS中生成的,不要着急! 只是

    2024年02月04日
    浏览(46)
  • Content-Type 值有哪些?

    1、application/x-www-form-urlencoded 最常见 POST 提交数据的方式。 浏览器的原生 form 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数据。 Cntent-Type 被指定为 application/x-www-form-urlencoded。 其次,提交的数据按照【name=小草莓other=hahah】的方式进行编

    2024年02月06日
    浏览(52)
  • 前端篇-Content-Type 详解

    Content-Type(MediaType),即是Internet Media Type,互联网媒体类型,也叫做MIME类型。在互联网中有成百上千中不同的数据类型,HTTP在传输数据对象时会为他们打上称为MIME的数据格式标签,用于区分数据类型。最初MIME是用于电子邮件系统的,后来HTTP也采用了这一方案。 在HTTP协议

    2024年04月27日
    浏览(47)
  • http中的Content-Type类型

    最近在做web端下载的时候需要给前端返回一个二进制的流,需要在请求头中设置一个 那么http中的Content-Type有具体有哪些呢?他们具体的使用场景又是怎样的呢? MediaType,即是Internet Media Type,互联网媒体类型;也叫做MIME类型,在Http协议消息头中,使用Content-Type来表示具体请

    2024年02月06日
    浏览(53)
  • 详解Http的Content-Type

    目录 1.概述 2.常用类型 2.1.application/x-www-form-urllencoded 2.2.application/json 3.Spring MVC支持的编码 3.1.实验 3.2.适配器 3.3.自定义适配器 HTTP(HyperText Transfer Protocol),超文本传输协议。超文本(Hypertext)是一种结构化的文本,其中包含了超链接(Hyperlink)的能力,通过超链接可以在不

    2024年02月09日
    浏览(37)
  • 【Python Flask/postman:request中post的header:Content-type=“text/plain”报错及解决方法】

    python Flask构建restful API接口服务,通过postman进行接口服务验证测试 提示:这里描述项目中遇到的问题: 验证接口调用text/plain时出现报错 源代码(错误): 报错1: TypeError: ‘bytes’ object is not callable 报错1原因: 类中函数名或者变量名重用(即变量名和函数名有重复) 根据

    2023年04月08日
    浏览(52)
  • Http Content-type 对照表

    文件扩展名 Content-Type(Mime-Type) 文件扩展名 Content-Type(Mime-Type) .*( 二进制流,不知道下载文件类型) application/octet-stream .tif image/tiff .001 application/x-001 .301 application/x-301 .323 text/h323 .906 application/x-906 .907 drawing/907 .a11 application/x-a11 .acp audio/x-mei-aac .ai application/postscript .aif audio/aiff

    2024年02月09日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包