关于爬取新浪首页显示乱码的解决办法

Posted luckyzt

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于爬取新浪首页显示乱码的解决办法相关的知识,希望对你有一定的参考价值。

爬取新浪的主页面,想采集主要页面的新闻板块的主要条目

技术图片
import requests
from bs4 import BeautifulSoup
import re

html = requests.get("https://www.sina.com.cn")
bsobj = BeautifulSoup(html.text)
title=bsobj.find_all("a",{"href":re.compile("https://news.sina.com.cn/.*/.*/.*.shtml")})
for link in title:
    content=link.get_text()
    print(content)
View Code

后来发现爬取的是一堆中文乱码,如下:

è°?æ²»å?½ç??æ?¿ ä¹ è¿?å¹³è¿?10个æ¯?å?»è??人寻å?³
è¨?è°?æ??é?? ä¹ è¿?å¹³å¯?语广大é??å¹´ç§?æ??人æ??
ä¹ è¿?平签署第ä¸?å??äº?å?· ä¸?å??å?­å?·ä¸»å¸­ä»¤
å??å±?中ç¾?å?³ç³»ç¦»ä¸?å¼?ç?¸äº?å°?é??

经过在网上搜索了一天,终于找到一个解决乱码的解决办法,其他的都不可行

import requests
from bs4 import BeautifulSoup
import re

html = requests.get("https://www.sina.com.cn")
bsobj = BeautifulSoup(html.content)#request的content属性是具有识别网页编码性能的,能解决绝大多数乱码问题。
title=bsobj.find_all("a",{"href":re.compile("https://news.sina.com.cn/.*/.*/.*.shtml")})
for link in title:
    content=link.get_text()
    print(content)

显示结果如下:

发展中美关系离不开相互尊重
光辉历程 奋斗史诗
让经济全球化更好造福各国人民
人民日报:打开港版“颜色革命”的潘多拉魔盒
国际锐评:保持相向而行 朝着达成协议继续迈进
被问怎么看待彭斯涉华演讲 王毅:一派胡言
被问怎么看待彭斯涉华演讲 王毅:一派胡言
央视:CNN的险恶扭曲被这个提问暴露了
14个越南家庭报案家人失踪
货车司机将被诉过失杀人罪
3名解放军飞行员坠机牺牲 曾参加2019国庆飞行表演
中日关系正发生历史性巨变 王毅这番话很意味深长
因严重违纪 2名将军被责令辞去人大代表职务
中国最赚钱高铁冲向A股 67名员工1年净利超100亿
67岁高龄产妇:夫妻两人有退休金可自行抚养孩子
美媒:“伊斯兰国”头目巴格达迪在美军突袭中死亡
如何活到100岁?盘点长寿秘诀
西媒:可以躺着去火星旅行吗?
贾跃亭破产重组的“精明”
男子家空调半夜传诡异尖叫声
深圳最大城中村拆迁 但一夜造富的故事只是传说
警方悬赏10万寻11年前命案嫌犯 专家凭监控画像
珠宝鉴定机构未见实物就出证 假证书每张不到5元
夫妻因纠纷开车相互追逐酿车祸 致扶贫干部身亡
重大博物馆陷赝品漩涡 部分高校博物馆存监管盲区
本是孩子信赖的人 美国这对警察教师夫妇却做这事
地铁上禁外放 人民日报:守住边界便守住颜面

具体编码的问题,可以参考https://www.cnblogs.com/busui/p/9340339.html

以上是关于关于爬取新浪首页显示乱码的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

数据库中文显示乱码问题解决办法

Java关于中文乱码的解决办法

python(27)requests 爬取网页乱码,解决方法

navicat for mysql 显示中文乱码解决办法

爬虫之网页乱码解决方法(gb2312 -> utf-8)

Python 爬虫实例—— 爬取 新浪军事新闻