为了账号安全,请及时绑定邮箱和手机立即绑定

爬虫乱码情况

爬出来的全是b'\nPython\xef\xbc\x88\xe8\x8b\xb1\xe8\xaf\xad\xe5\x8f\x91\xe9\x9f\xb3乱码,什么情况

正在回答

4 回答

没错,编码,又解码,相当于不起作用,但是起作用的是这一句“fout = open('output.html','w',encoding='utf-8')”,我也很奇怪,给文本编一次UTF编码就好,MOOC的方式就出现了乱码错误,但是在文件的打开的时间进行UTF编码就可以避免乱码了

0 回复 有任何疑惑可以回复我~

又encode,又decode,岂不是编码没有改???

0 回复 有任何疑惑可以回复我~

在文件开头加

# -*- coding: utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding("utf-8")


0 回复 有任何疑惑可以回复我~
  我的运行环境是win7,32位,python3.5.1,
  修改解析器代码
  把#号后面的语句修改成下行,就好了!
    def output_html(self):

        #fout = open('output.html','w')
        fout = open('output.html','w',encoding='utf-8')
        
        #fout.write("<html><meta charset=\"utf-8\" />")
        fout.write("<head><meta charset=\"utf-8\"></head>")

        fout.write("<body>")
        fout.write("<table>")
        
        for data in self.datas:
            fout.write("<tr>")
            fout.write("<td>%s</td>" % data['url'])

            #fout.write("<td>%s</td>" % data['title'].encode('utf-8'))
            fout.write("<td>%s</td>" % data['title'].encode('utf-8').decode("utf-8"))

            #fout.write("<td>%s</td>" % data['summary'].encode('utf-8'))
            fout.write("<td>%s</td>" % data['summary'].encode('utf-8').decode("utf-8"))


2 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Python开发简单爬虫
  • 参与学习       227670    人
  • 解答问题       1219    个

本教程带您解开python爬虫这门神奇技术的面纱

进入课程

爬虫乱码情况

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信