
你贴的python代码,缩进有问题。 请自己重新确定代码缩进是正常的,且贴出来正常的代码给我们看。 2请确保: 你代码中所处理的内容,的确是你所截图贴出来的内容 -> 程序抓取出来的内容,有时候未必和你查看网页源码看到的内容是一样的。
编码问题!
你在网站上右键,查看下源码代码
meta ;这个是百度知道,你可以看下你采集的网站的编码,然后用beautifulsoup的时候就需要设置啊
htmlCharset = "GB2312"soup = BeautifulSoup(respHtml, fromEncoding=htmlCharset)
BeautifulSoup默认检测到的是unicode编码,当html为其他类型编码(非utf-8和asc ii),比如GB2312的话,则需要指定相应的字符编码,BeautifulSoup才能正确解析。
print一个对象的逻辑:内部是调用对象的__str__得到对应的字符串的,此处对应的是soup的__str__ 而针对于soup本身,其实已经是Unicode编码,所以可以通过指定__str__输出时的编码为GBK,以使得此处正确显示非乱码的中文
而对于cmd:(中文的系统中)编码为GBK,所以只要重新编码为gb18030就可以正常输出了
就是下面这行代码
print (souptitle)encode('gb18030')以上就是关于如何解决用 Beautiful Soup 抓取网页却得到乱码的问题全部的内容,包括:如何解决用 Beautiful Soup 抓取网页却得到乱码的问题、python 用requests和BeautifulSoup捉去网站上的火星文 为什么会乱码怎么解决、Python中用BeautifulSoup解析中文网页里的中文都是乱码,怎么回事等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)