解决Python发送Http请求时,中文乱码的问题


Posted in Python onApril 30, 2020

解决方法:

先encode再quote。

原理:

msg.encode('utf-8')是解决中文乱码问题。

quote():假如URL的 name 或者 value 值中有『&』、『%』或者『=』等符号,就会有问题。所以URL中的参数字符串也需要把『&=』等符号进行编码,quote()就是对参数字符串中的『&=%』等符号进行编码。

例子:

# -*- coding: UTF-8 -*-
# python2.7
from urllib import quote
import requests
 
def httpGet(sUrl):
 header = {}
 try:
  response=requests.get(sUrl, headers=header)
  sText = response.text
  return sText
 except BaseException:
  print BaseException
   
def demo(msg):
 sEncodeMsg = quote(msg.encode('utf-8'))
 url = 'http://www.youdao.com/w/eng/' + sEncodeMsg
 print httpGet (url)
 
demo(u'90%的数据')

补充知识:python 用Request payload 翻页获取不同的返回值

我就废话不多说啦,直接看代码吧!

headers={'Accept':'*/*',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'zh-CN,zh;q=0.9',
'Ajax-method': 'GetPageJYXTXXFB',
'Connection': 'keep-alive',
'Content-Length': '129',
'Content-Type': 'text/plain; charset=UTF-8',
'Cookie': 'ASP.NET_SessionId=vdl5ooxkjkazwszgvj5woewh',
'Host': 'ggzy.yibin.gov.cn',
'Origin': 'http://ggzy.yibin.gov.cn',
'Referer': 'http://ggzy.yibin.gov.cn/Jyweb/ZhaoBaoGongGaoList.aspx?Type=%e5%bb%ba%e8%ae%be%e5%b7%a5%e7%a8%8b&SubType=260',
'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36',
}      #模仿浏览器 
 payload=[i*15,15,"FBSJ DESC","XMMC","","XXLB ={0} AND XTType={1} AND ZBFS != 2","[{\"pvalue\":\"260\"},{\"pvalue\":\"1\"}]"] #Request payload里面的信息
 
 rsp=requests.post(url1,data=json.dumps(payload),headers = headers) #用Request payload里面的信息发送post请求
 data_a=rsp.content 

def parse_js(expr):
 obj = eval(expr, type('Dummy', (dict,), dict(__getitem__=lambda s, n: n))())
 return obj

list_a = parse_js(data_a)    # 把 json字典({KEY:'value'}) 转换为python的字典({'key':'value'})

以上这篇解决Python发送Http请求时,中文乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
11个并不被常用但对开发非常有帮助的Python库
Mar 31 Python
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
Apr 28 Python
讲解Python中的标识运算符
May 14 Python
python过滤字符串中不属于指定集合中字符的类实例
Jun 30 Python
Python 自动化表单提交实例代码
Jun 08 Python
Python实现二维数组输出为图片
Apr 03 Python
Django+Ajax+jQuery实现网页动态更新的实例
May 28 Python
python requests post多层字典的方法
Dec 27 Python
Python函数装饰器常见使用方法实例详解
Mar 30 Python
python监控进程状态,记录重启时间及进程号的实例
Jul 15 Python
python lambda表达式在sort函数中的使用详解
Aug 28 Python
Python3 Tensorlfow:增加或者减小矩阵维度的实现
May 22 Python
Pytorch高阶OP操作where,gather原理
Apr 30 #Python
python利用Excel读取和存储测试数据完成接口自动化教程
Apr 30 #Python
Python闭包与装饰器原理及实例解析
Apr 30 #Python
python+requests接口压力测试500次,查看响应时间的实例
Apr 30 #Python
Pycharm连接远程服务器过程图解
Apr 30 #Python
python3发送request请求及查看返回结果实例
Apr 30 #Python
python获取响应某个字段值的3种实现方法
Apr 30 #Python
You might like
php简单封装了一些常用JS操作
2007/02/25 PHP
PHP 八种基本的数据类型小结
2011/06/01 PHP
如何使用Strace调试工具
2013/06/03 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
2014/07/25 PHP
Laravel 添加多语言提示信息的方法
2019/09/29 PHP
jquery选择器(常用选择器说明)
2010/09/28 Javascript
MooBox 基于Mootools的对话框插件
2012/01/20 Javascript
Javacript实现颜色梯度变化和渐变的效果代码
2013/05/31 Javascript
jquery快捷动态绑定键盘事件的操作函数代码
2013/10/17 Javascript
在页面中js获取光标/鼠标的坐标及光标的像素坐标
2013/11/11 Javascript
jQuery处理xml格式的返回数据(实例解析)
2013/11/28 Javascript
JS获取URL中的参数数据
2013/12/05 Javascript
Ajax请求在数据量大的时候出现超时的解决方法
2014/02/27 Javascript
javascript删除元素节点removeChild()用法实例
2015/05/26 Javascript
利用浮层使select不可选的实现方法
2016/12/03 Javascript
基于jQuery实现简单人工智能聊天室
2017/02/10 Javascript
温故知新——JavaScript中的字符串连接问题最全总结(推荐)
2017/08/21 Javascript
解决vue组件中使用v-for出现告警问题及v for指令介绍
2017/11/11 Javascript
Vue项目组件化工程开发实践方案
2018/01/09 Javascript
mpvue全局引入sass文件的方法步骤
2019/03/06 Javascript
详解VUE Element-UI多级菜单动态渲染的组件
2019/04/25 Javascript
后台使用freeMarker和前端使用vue的方法及遇到的问题
2019/06/13 Javascript
JS代码检查工具ESLint介绍与使用方法
2020/02/04 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
2020/06/11 Javascript
Python实现查找字符串数组最长公共前缀示例
2019/03/27 Python
PYQT5设置textEdit自动滚屏的方法
2019/06/14 Python
python中时间转换datetime和pd.to_datetime详析
2019/08/11 Python
解决Python logging模块无法正常输出日志的问题
2020/02/21 Python
opencv 查找连通区域 最大面积实例
2020/06/04 Python
CSS3实现图片抽屉式效果的示例代码
2019/11/06 HTML / CSS
俄罗斯珠宝市场的领导者之一:Бронницкий ювелир
2019/10/02 全球购物
物业管理员岗位职责范文
2013/11/25 职场文书
大学生职业生涯规划范文——找准自我,定位人生
2014/01/23 职场文书
信息服务专业毕业生求职信
2014/03/02 职场文书
关于战胜挫折的名言警句大全!
2019/07/05 职场文书
如何解决goland,idea全局搜索快捷键失效问题
2022/04/03 Golang