python3 编码问题

掌上鹅 2017-12-13 11:31:04
在用python3爬一个网页的源代码的时候 ,当一个链接中有中文时报错了
代码如下
# encoding:UTF-8
import urllib.request

url = "https://www.baidu.com/baidu?wd=马云&tn=monline_dg&ie=utf-8"
data = urllib.request.urlopen(url).read()
data = data.decode('UTF-8')
print(data)
报错代码:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 14-15: ordinal not in range(128)
...全文
88 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sanGuo_uu 2017-12-13
  • 打赏
  • 举报
回复
from urllib import request,parse

url = "https://www.baidu.com/baidu"
data = {  
	'wd': '马云',  
	'tn': 'monline_dg',  
	'ie': 'utf-8'
}  
data = parse.urlencode(data).encode('utf-8')  

req=request.Request(url,data=data)
data = request.urlopen(req).read()
data = data.decode('UTF-8')
print(data)
掌上鹅 2017-12-13
  • 打赏
  • 举报
回复
引用 2 楼 u012536120 的回复:
上面那个有毛病,这个是新改的 要加headers,不然总有点问题
from urllib import request

url = "https://www.baidu.com"
url2='https://www.baidu.com/baidu?wd='+request.quote("马云")+'&tn=monline_dg&ie=utf-8'

headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36',  
'Referer': 'xxx',  
'Connection': 'keep-alive' 
} 
req=request.Request(url2,headers=headers)
data = request.urlopen(req).read()
data = data.decode('UTF-8')

print(data)
你这样写还是会报错,应该在第一行写加 #encoding:gbk 这样就可以运行了
sanGuo_uu 2017-12-13
  • 打赏
  • 举报
回复
上面那个有毛病,这个是新改的 要加headers,不然总有点问题
from urllib import request

url = "https://www.baidu.com"
url2='https://www.baidu.com/baidu?wd='+request.quote("马云")+'&tn=monline_dg&ie=utf-8'

headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36',  
'Referer': 'xxx',  
'Connection': 'keep-alive' 
} 
req=request.Request(url2,headers=headers)
data = request.urlopen(req).read()
data = data.decode('UTF-8')

print(data)

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧