用JSOUP抓取该网页: http://it.ithome.com/category/47_1.html
其他字符都正常,就是“囧”乱码了,求解答。,比如“佩戴Apple Watch的一天:?事太多”
public class Main {
public static void main(String[] args) throws IOException {
Document jsoup = Jsoup.connect("http://it.ithome.com/category/47_1.html").get();
System.out.println(jsoup.html());
}
}
1
l12ab 2015-06-05 23:36:11 +08:00
编码? 换UTF8试试?
|
2
wy315700 2015-06-05 23:40:00 +08:00
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
gb2312的。。 |
3
zonghua 2015-06-06 00:48:05 +08:00 via iPhone
编码!!
|
5
FrankFang128 2015-06-06 00:49:33 +08:00
我还以为你说的是 jsonp,原来是 jsoup,长得好像。 XD
|
6
imn1 2015-06-06 01:12:03 +08:00
作为开发人员,应该了解一下gb2312和gbk的区别
至少知道这两者用于显示和用于程序编码两种情况的适用范围 |
7
Septembers 2015-06-06 01:46:16 +08:00 via Android
@imn1 GBK是微软基于GB2312拓展的超集
|
8
SoloCompany 2015-06-06 02:19:18 +08:00 via iPad
没用过jsoup
你可以尝试一下给作者发个issue让他们自动编码转换 gb2312 / gbk -> gb18030 或者自己去发pr 没错微软就是这么干的 网站为啥这么声明,自然是为了让它们可以兼容老掉牙的系统 你需要至少懂一点关于编码的知识以及gb编码的发展历史 |
9
nicegoing OP @l12ab
@wy315700 @zonghua @imn1 @FrankFang128 @Septembers @SoloCompany 谢谢,编码换成GBK正常显示了 Document doc = Jsoup.parse(new URL(urlStr).openStream(), "gbk", urlStr); System.out.println(doc); |
10
zonghua 2015-06-06 23:00:34 +08:00 via iPhone
@Septembers gb不是国标吗?工业很多gb啊,微软竟然
|
11
Septembers 2015-06-06 23:16:35 +08:00 via Android
|