解决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 相关文章推荐
python中精确输出JSON浮点数的方法
Apr 18 Python
Python socket.error: [Errno 98] Address already in use的原因和解决方法
Aug 25 Python
Python标准库之多进程(multiprocessing包)介绍
Nov 25 Python
简单实现python进度条脚本
Dec 18 Python
基于pandas将类别属性转化为数值属性的方法
Jul 25 Python
详解django的serializer序列化model几种方法
Oct 16 Python
用python脚本24小时刷浏览器的访问量方法
Dec 07 Python
Python异步操作MySQL示例【使用aiomysql】
May 16 Python
python找出因数与质因数的方法
Jul 25 Python
numpy.ndarray 实现对特定行或列取值
Dec 05 Python
python读取配置文件方式(ini、yaml、xml)
Apr 09 Python
Python基于DB-API操作MySQL数据库过程解析
Apr 23 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 生成随机验证码图片代码
2010/02/08 PHP
PHP函数篇之掌握ord()与chr()函数应用
2011/12/05 PHP
Yii控制器中操作视图js的方法
2016/07/04 PHP
PHP入门教程之PHP操作MySQL的方法分析
2016/09/11 PHP
PHP单例模式实例分析【防继承,防克隆操作】
2019/05/22 PHP
我也种棵OO树JXTree[js+css+xml]
2007/04/02 Javascript
jquery中获得$.ajax()事件返回的值并添加事件的方法
2010/04/15 Javascript
javascript基础第一章 JavaScript与用户端
2010/07/22 Javascript
纯js实现背景图片切换效果代码
2010/11/14 Javascript
多种方式实现JS调用后台方法进行数据交互
2013/08/20 Javascript
javascript父子页面通讯实例详解
2015/07/17 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
2015/10/08 Javascript
JS组件Bootstrap实现下拉菜单效果代码
2016/04/26 Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
2016/09/20 Javascript
angularjs实现搜索的关键字在正文中高亮出来
2017/06/13 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
Vue-cli3简单使用(图文步骤)
2019/04/30 Javascript
jQuery zTree插件快速实现目录树
2019/08/16 jQuery
jQuery实现高度灵活的表单验证功能示例【无UI】
2020/04/30 jQuery
VUE中鼠标滚轮使div左右滚动的方法详解
2020/12/14 Vue.js
Python随机生成信用卡卡号的实现方法
2015/05/14 Python
Python内建数据结构详解
2016/02/03 Python
asyncio 的 coroutine对象 与 Future对象使用指南
2016/09/11 Python
python通过ffmgep从视频中抽帧的方法
2018/12/05 Python
python基于gevent实现并发下载器代码实例
2019/11/01 Python
tensorflow实现读取模型中保存的值 tf.train.NewCheckpointReader
2020/02/10 Python
Python使用pdb调试代码的技巧
2020/05/03 Python
学习Python爬虫的几点建议
2020/08/05 Python
Flask-SocketIO服务端安装及使用代码示例
2020/11/26 Python
html5使用canvas实现弹幕功能示例
2017/09/11 HTML / CSS
怎样让char类型的东西转换成int类型
2013/12/09 面试题
关键字throw与throws的用法差异
2016/11/22 面试题
解除合同协议书
2014/04/17 职场文书
2014年中秋寄语
2014/08/11 职场文书
2014国庆节幼儿园亲子活动方案
2014/09/16 职场文书
win10系统计算机图标怎么调出来?win10调出计算机图标的方法
2022/08/14 数码科技