课程
/后端开发
/Python
/Python开发简单爬虫
如图,你们有出现这样的情况吗
2016-01-27
源自:Python开发简单爬虫 7-6
正在回答
fout = open('output.html', 'w', encoding='utf-8')
fout.write("<html><head><meta charset='utf-8'><title>爬取百度百科1000个页面的数据</title></head><body><table>")
已经解决
win7 python3.6 遇到乱码的情况
同明磊
只需要在fout = open('output.html', 'w', encoding = 'utf-8')
fout.write("<td>%s</td>" % data['title'])
fout.write("<td>%s</td>" % data['summary'])
这里面不能加.encode('utf-8'),加了会乱码
fout.write("<head><meta charset = 'utf-8'></head>")这个写不写无所谓,不影响
为什么我的会这样?
代码中设定了输出编码是utf-8,但是没有在html head中加入该网页的编码格式,浏览器就用默认的编码方式去解析了。
在
fout.write("<html>") fout.write("<body>")
下面追加输出
fout.write("<head><meta charset='utf-8'></head>")
就可以解决了。
baibaibai66
迷你熊
小丁要做个有勇气的人
qq_守火人_03179824
这个还是不行啊
fout.write("<td>%s</td>" % data['summary'].encode(type))
UnicodeEncodeError: 'mbcs' codec can't encode characters in position 0--1: invalid character
已解决
需要加入
import sys
type = sys.getfilesystemencoding()
并把encode改为
fout.write("<td>%s</td>" % data['title'].encode(type))
笔记:天知道系统的编码是什么。。
举报
本教程带您解开python爬虫这门神奇技术的面纱