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

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

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

猜你喜欢

转载自www.cnblogs.com/luckyzt/p/11748146.html