python爬虫抓取到的数据用网页打开时是乱码,怎么解决

python爬虫抓取到的数据用网页打开时是乱码,怎么解决,第1张

写爬虫是经常会遇到这样的问题,这种问题很显然是编码问题,解决的方法其实也不难。

你可以用下面的两个方法来解决你的编码问题:

第一种是,通过浏览器打开你写的html之后,找到浏览器中的文字编码修改,将编码改为Unicode编码,即可修复。

第二种方法是修改你的前端代码:在你的代码output_html方法中,规定网页的文字编码即可

首先,编码要设置好。

如果LZ是普通用户,按下图方法设置合适的编码,比如繁体中文、简体中文还有那个“其它”里面的utf-8编码,都试试,应该会有合适的:

但这样有个问题,每次打开这个页面都要选一次。

如果LZ是这个网页的开发者,记得把全站的编码统一下就OK了,如果是繁体,就全部设为繁体 big5,否则,整站文件的默认编码设为utf-8或gd2312,记得,只能选其中一个。

希望以上对LZ有帮助吧。

转换编码不能只改页面里的设置,还得把页面本身转成相应编码才行,两个地方统一才不会出现乱码。一定要有软件转换才好。

以我的经验,用记事本另存虽然也是一个方法,但是还是可能有部分出现乱码的,包括在dw软件里用‘修改’-‘页面属性’-‘标题/编码’里修改了编码,也有注释什么的成了乱码的情况

我一直用的是editplus软件,打开页面就能在右下角看见页面的真正编码,如果页面设置了utf-8的编码,而右下角显示的是ANSI,你可以双击那个显示编码的地方,会d出修改编码的对话框,修改一下就可以了。也可以点击‘文档-‘文件编码‘’-‘更改文件编码方式’来修改,还可以批量修改文件编码。个人觉得这个软件转换编码挺好的。

jsp提交数据有两种方式,一种是post,一种是get,两种不同的提交方式对中文的处理也不同。

post提交方式只需在servlet中设置好requestsetCharacterEncoding("编码集"); 注:编码集按照您的需求写,可以是UTF-8,也可以是GBK或GB2312

get提交方式则需要转码,因为tomcat服务器编码集为ISO8859-1,需要手动转码,下方代码是我个人编写的一个工具类,希望对你有帮助!另外jsp传递中文如果用get提交方式,在前台对中文也要

public static String returnNewString(String oldString){

     String newString="";

try {

newString = new String(oldStringgetBytes("ISO-8859-1"),"UTF-8");

} catch (UnsupportedEncodingException e) {

eprintStackTrace();

}

      return newString;

     }如既有可能有post提交方式,也有可能有get提交方式,可以采用修改tomcat的serverxml文件,或采用过滤器,修改serverxml文件方式为:<Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol=">

C>

一看你的CString就知道你用的是ANSI字符集,网路传输都是UNICODE字符集,需要将UNICODE转换为ANSI才行。

A2W()将char指针转换为WCHAR

W2A()将WCHAR指针转换为char

使用示例,将char型转换为WCHAR型。

#include <atlconvh>

USES_CONVERSION;

CString strFileName = _T("");

strFileNameFormat(_T("%s"),A2W(“char指针”));

以上就是关于python爬虫抓取到的数据用网页打开时是乱码,怎么解决全部的内容,包括:python爬虫抓取到的数据用网页打开时是乱码,怎么解决、网页显示乱码怎么解决、HTML页面为什么设置了UTF-8仍然中文乱码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9622375.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存