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)
  • 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日
    浏览(68)
  • 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日
    浏览(56)
  • Python爬虫关于网站上传图片: Content-Type: multipart/form-data; boundary=----WebKitFormBoundary****************

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

    2024年02月04日
    浏览(47)
  • 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日
    浏览(54)
  • 前端篇-Content-Type 详解

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

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

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

    2024年02月06日
    浏览(54)
  • 详解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日
    浏览(39)
  • 【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日
    浏览(54)
  • 前端知识~Content-Type和Accept

    Content-Type和Accept是两个HTTP标头(HTTP headers),用于在HTTP请求和响应之间传递有关请求的数据类型和响应的首选内容类型的信息。这两个标头在HTTP通信中起着关键的作用。 Content-Type: Content-Type 是HTTP请求头或响应头的一部分,用于指示HTTP消息主体(请求或响应体)的媒体类

    2024年02月10日
    浏览(39)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包