java - 为什么使用 Jsoup 连接到特定网站时会收到 EOFException?

标签 java jsoup

我正在尝试从该网站 http://www.mof.gov.cn/ 获取一些数据,并且我不断收到 EOFException:

连接命令非常基本: Jsoup.connect("http://www.mof.gov.cn/").ignoreContentType(true).userAgent("Mozilla/5.0(Windows NT 6.1; rv:23.0) Gecko/20100101 Firefox/23.0").timeout(30000).get();

EOFException 是这样的:

java.io.EOFException
at java.util.zip.GZIPInputStream.readUByte(GZIPInputStream.java:207)
at java.util.zip.GZIPInputStream.readUShort(GZIPInputStream.java:197)
at java.util.zip.GZIPInputStream.readUInt(GZIPInputStream.java:189)
at java.util.zip.GZIPInputStream.readTrailer(GZIPInputStream.java:179)
at java.util.zip.GZIPInputStream.read(GZIPInputStream.java:94)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:256)
at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
at java.io.FilterInputStream.read(FilterInputStream.java:90)
at org.jsoup.helper.DataUtil.readToByteBuffer(DataUtil.java:124)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:464)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:410)
at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:164)
at org.jsoup.helper.HttpConnection.get(HttpConnection.java:153)
at com.staging.Crawfinance.main(Crawfinance.java:30)

知道为什么吗?非常感谢。

最佳答案

请使用有效的字符集名称尝试此操作:

Document doc = Jsoup.parse(new URL("http://www.mof.gov.cn/").openStream(), "UTF-8", "http://www.mof.gov.cn/");

关于java - 为什么使用 Jsoup 连接到特定网站时会收到 EOFException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18731708/

相关文章:

java - 尝试查询 MongoDB 数据时出现问题

java - 如何在不使用按钮和面板的情况下将 ActionListener 添加到 JFrame ?

java - 正则表达式 "either a semicolon or the end of the string"

html - CSS 选择器无法正确使用逗号

java - 如何自动化 Gmail 登录以在 Java 8 中使用 HttpsURLConnection 和 Jsoup

java - 以固定的时间间隔消耗来自输入流的消息

java - JOOQ 在使用记录插入时获取自动生成的列值,而不返回

java - 使用 Rally Java Rest api 使用字段名称查找引用

java - 样式属性未使用 jsoup 显示

android - 在 google images JSON android 上上传图像