Home >Backend Development >Python Tutorial >为什么这个网页的源代码用python爬下来后用beautifulsoup解析后会出现字符丢失?

为什么这个网页的源代码用python爬下来后用beautifulsoup解析后会出现字符丢失?

WBOY
WBOYOriginal
2016-06-06 16:22:101878browse

回复内容:

又是你这个只点感谢不点赞的坏人……
话说你为什么要这么心急地学呢,基础不扎实啊,太冒进了,很显然没有清晰的思路…

首先编程要有默认的编码,也就是在文件的一开始加上
<code class="language-text"> # -*- coding: utf-8 -*-
</code>
你是python2 代码前 加上# coding:utf-8

看python培训黄哥的三篇文章
python开发爬虫汉字编码不再是问题:
将python2中汉字会出现乱码的事一次性说清楚
article/python_bianma.md at master · pythonpeixun/article · GitHub
python爬虫访问多个网站、中文编码的处理。
python爬虫访问多个网站、中文编码的处理。
python3访问sina首页中文的处理
python3访问sina首页中文的处理


可能在你这个转来转处的地方丢失。
ur = list(ur)
ur = ur[:-1]
****************
<code class="language-text"> ur = res.contents[0]
    ur = list(ur)
    ur = ur[:-1]
    temp = unicode(ur[0])
    for index in range(0, len(ur), 4):
        temp = unicode(ur[index])
        print temp.strip()
        print ur[index+1].string
        print ur[index+1]['href']
        print '\n'
</code>
似乎response 后面用了俩decode 后面一个改encode应该就好了吧。。。

Decode是把括号里转成Unicode

Encode是Unicode转成括号里,就是UTF-8

Unicode就是个中转站


再不行就同一楼ignore。。。 还是用Requests库来处理http请求吧
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn