python requests 编码问题

url = host + path
headers = {...}
data = {...}
files = {...}

files两种类型: 字典和 元组

{
  "field1" : ("filename1", open("filePath1", "rb")),
  "field2" : ("filename2", open("filePath2", "rb"), "image/jpeg"),
  "field3" : ("filename3", open("filePath3", "rb"), "image/jpeg", {"refer" : "localhost"})
}
字段对应:{"字段名": ("filename","fileobject", "content-type", "headers")}

或者
{
  "field1" : open("filePath1", "rb"),
  "field2" : open("filePath2", "rb"),
  "field3" : open("filePath3", "rb")

元组形式:

[
  ("field1" , ("filename1", open("filePath1", "rb"))),
  ("field2" , ("filename2", open("filePath2", "rb"), "image/jpeg")),
  ("field3" , ("filename3", open("filePath3", "rb"), "image/jpeg", {"refer" : "localhost"}))
]
字段对应:["字段名", ("filename","fileobject", "content-type", "headers")]

data = requests.post(url,files=files,data=data_dict,headers=headers)
print(data.content.decode("utf-8"))

注: 上述可能filename不支持中文名,可以 D:\Users\jiangbo.xu\AppData\Local\Programs\Python\Python35\Lib\site-packages\urllib3\fields.py 50行左右

    value = '%s*=%s' % (name, value) 改成 value = '%s=%s' % (name, value) 

原文地址:https://www.cnblogs.com/wanderingfish/p/10987332.html

时间: 2024-10-11 04:13:18

python requests 编码问题的相关文章

Python+Requests编码识别Bug

Requests 是使用 Apache2 Licensed 许可证的 HTTP 库.用 Python 编写,更友好,更易用. Requests 使用的是 urllib3,因此继承了它的所有特性.Requests 支持 HTTP 连接保持和连接池,支持使用 cookie 保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的 URL 和 POST 数据自动编码.现代.国际化.人性化. 最近在使用Requests的过程中发现一个问题,就是抓去某些中文网页的时候,出现乱码,打印encodin

Python+Requests接口测试教程(1):Fiddler抓包工具

本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测试和python+requests自动化的,首先本书确实写的比较基础,对基础内容也写的很详细,所以大神绕道. 为什么要先学fiddler? 学习接口测试必学http协议,如果直接先讲协议,我估计小伙伴们更懵,为了更好的理解协议,先从抓包开始.结合抓包工具讲http协议更容易学一些. 1.1 抓fir

Python requests

Python requests备忘 0x01 1 #coding:utf-8 2 import requests 3 4 res = requests.get('http://www.baidu.com') 5 print res.status_code 6 print res.headers['content-type'] #头部信息 7 print res.encoding #编码信息 8 print res.text9 print res.content 0x02 payload 1 im

python requests库学习笔记(上)

尊重博客园原创精神,请勿转载! requests库官方使用手册地址:http://www.python-requests.org/en/master/:中文使用手册地址:http://cn.python-requests.org/zh_CN/latest/: requests库作者Kenneth Reitz个人主页:https://www.kennethreitz.org/: requests库github地址:https://github.com/requests/requests: requ

python requests函数封装方法

python  requests函数封装方法 上代码 1 import requests 2 import json 3 4 """ 5 封装request请求, 6 1.post:my_post 7 2.get:my_get 8 3.返回code:get_code(res) 9 4.返回json:get_json(res) 10 5.返回text:get_text(res) 11 6.响应时间:get_time(res) 12 7.请求header:get_header(a

Python:requests库、BeautifulSoup4库的基本使用(实现简单的网络爬虫)

Python:requests库.BeautifulSoup4库的基本使用(实现简单的网络爬虫) 一.requests库的基本使用 requests是python语言编写的简单易用的HTTP库,使用起来比urllib更加简洁方便. requests是第三方库,使用前需要通过pip安装. pip install requests 1.基本用法: import requests #以百度首页为例 response = requests.get('http://www.baidu.com') #res

python+requests——发送post请求——各种情况

requests库是 python3 中非常优秀的第三方库,它使用 Apache2 Licensed 许可证的 HTTP 库,用 Python 编写,真正的为人类着想. requests 使用的是 urllib3(python3.x中的urllib),因此继承了它的所有特性. Requests 会自动实现持久连接keep-alive,Requests 支持 HTTP 连接保持和连接池,支持使用 cookie 保持会话,支持文件上传, 支持自动确定响应内容的编码,支持国际化的 URL 和 POST

解决Python代码编码问题 SyntaxError: Non-UTF-8 code starting with '\xc1'

导致出错的根源就是编码问题. 解决方案是: 在程序最上面加上: view plai# coding=gbk 这样程序就可以正常运行了. 解决Python代码编码问题 SyntaxError: Non-UTF-8 code starting with '\xc1'

【转】Python字符编码详解

1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码.计算机世界里一开始只有英文,而单字节可以表示256个不同的字符,可以表示所有的英文字符和许多的控制符号.不过ASCII只用到了其中的一半(\x80以下),这也是MBCS得以实现的基础. 1.2. MBCS 然而计算机世界里很快就有了其他语言,单字节的ASCII已无法满足需求.后来每个语言就制定了一套自己的编码,由于单字节