python3.x - windows下python控制台输出中文乱码问题?
PHP中文网
PHP中文网 2017-04-17 16:04:36
0
8
476

在做爬虫的时候爬到的中文在控制台中显示乱码,编辑器用的是notepad++
是在powershell中运行的python程序。
在网上搜索了也没有找到合适的解决方法
请问各位这个如何解决? 先谢谢了!

PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(8)
巴扎黑

首先,code utf8加了没?
最前面加上下面这句

#-*_coding:utf8-*-

其次, 有些网页不一定是utf8编码的, 这样的网页里的中文爬下来要先转码才能打印, 例如,很多网页是GBK编码的,可以用下面这一行代码转成Unicode的

unicodePage = myPage.decode("gbk").encode('utf-8').decode('utf-8')
いいねを押す +0
黄舟

网页上的编码方式和你本地环境的编码方式不一样,设置本地编码为网页的编码方式。

いいねを押す +0
伊谢尔伦

网页一般是uft-8编码的,Windows上gbk编码的,做好适当的转码就OK了

いいねを押す +0
Ty80

环境变量里面设置PYTHONIOENCODING为UTF8

いいねを押す +0
洪涛

print u'中文'?

いいねを押す +0
阿神

加一句这个试试呢

import sys
reload(sys)
sys.setdefaultencoding('utf-8')
いいねを押す +0
刘奇

一些招数:

#coding=utf-8
from __future__ import unicode_literals

3 利用unicode做中间桥梁(不得不说在Windows上用Python还是比较不爽的)
いいねを押す +0
洪涛

题主问题太不具体,不是一个好问题!

Windows上面Python 2.x程序涉及到中文字符时建议:

  • Python源码文件保存的时候保存为UTF-8无BOM编码格式

  • 在Python源码文件第一行或者第二行加上

        # -*- coding:utf8 -*- 
  • 所有代码中出现中文字符串的地方用Unicdoe对象,用u''包起来

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!