Jsoup问题---获取http协议请求失败 org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml.

Jsoup问题---获取http协议请求失败

1、问题:用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不符合要求。

错误信息:

Exception in thread "main" org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml. Mimetype=application/json; charset=utf-8, URL=...
	at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:547)
	at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:493)
	at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:205)
	at org.jsoup.helper.HttpConnection.get(HttpConnection.java:194)
	at com.Interface.test.JsoupUtil.httpGet(JsoupUtil.java:30)
	at com.Interface.test.test.main(test.java:23)

请求方法:

public static String httpGet(String url,String cookie) throws IOException{
        //获取请求连接
        Connection con = Jsoup.connect(url);
        //请求头设置,特别是cookie设置
        con.header("Accept", "text/html, application/xhtml+xml, */*");
        con.header("Content-Type", "application/x-www-form-urlencoded");
        con.header("User-Agent", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0))");
        con.header("Cookie", cookie);
        //解析请求结果
        Document doc=con.get();
        //获取标题
        System.out.println(doc.title());
        return doc.toString(); 

    }

2、解决:只需要在 Connection con = Jsoup.connect(url);中添加ignoreContentType(true)即可,这里的ignoreContentType(true)意思就是忽略ContextType的检查。

添加后

        //获取请求连接
        Connection con = Jsoup.connect(url).ignoreContentType(true);
时间: 2024-10-05 04:45:42

Jsoup问题---获取http协议请求失败 org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/xhtml+xml.的相关文章

Jsoup获取部分页面数据失败 org.jsoup.UnsupportedMimeTypeException: Unhandled content type. Must be text/*, application/xml, or application/

用Jsoup在获取一些网站的数据时,起初获取很顺利,但是在访问某浪的数据是Jsoup报错,应该是请求头里面的请求类型(ContextType)不符合要求. 请求代码如下: private static void testOuGuanMatch() throws IOException{        Document doc = Jsoup.connect("我的URL").userAgent("Mozilla/5.0 (Windows; U; Windows NT 5.1;

打开 VirtualBox-5.2 出错:获取 VirtualBox COM 对象失败

打开 VirtualBox-5.2 报以下错误的处理方法获取 VirtualBox COM 对象失败.应用程序将被中断. Document is empty.Location: '/home/cbx/.config/VirtualBox/VirtualBox.xml', line 1 (0), column 1./home/vbox/vbox-5.2.18/src/VBox/Main/src-server/VirtualBoxImpl.cpp[554] (nsresult VirtualBox:

HTTP协议请求信息详解

通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息.客户端向服务器发送一个请求,请求头包含请求的方法.URI.协议版本.以及包含请求修饰符.客户信息和内容的类似于MIME的消息结构.服务器以一个状态行作为响应,相应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息.实体元信息以及可能的实体内容. Http协议定义了很多与服务器交互的方法,最基本的有4种,分别是GET.POST.PUT.DELETE.一个URL地址用于描述一个网络上的资源,而HTTP中的GET.POS

salt未持久化保存导致应用启动时候的网络请求失败(没有权限)

@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css); @import url(/css/cuteeditor.css); 获取位置--请求列表--发现没有权限 原因就是salt还没有获取 @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css); @import url(/c

Servlet程序获取http协议提交的信息

Servlet程序获取http协议提交的信息 Servlet程序获取http协议提交的信息 实现过程以及存在的问题 编码问题 实现过程以及存在的问题 下面是其Java Servlet代码: package com.jpzhutech.servlet; import java.io.IOException; import java.io.InputStream; import java.nio.Buffer; import java.util.Enumeration; import javax.s

SQL 2008 R2 启动失败 提示 请求失败或服务未及时响应

为什么启动sql server 配置管理器出现请求失败或服务未及时响应_百度知道 http://zhidao.baidu.com/link?url=ElemzIan6I2CqJsd7-7uk5TV259xaJrU8bKWILYO7h7MsYXUuvrBrQFn9wjJS2xvnK6qgOaKfk2DyMrfEd0On_     解决方案:停用"VIA协议"问题解决. "VIA协议"停用方法: 开始->程序->Microsoft SQL Server 20

HTTP协议请求响应模型

http协议请求响应模型 场景:登录 1.客户端发起请求到api接口 1.1用户在客户端填写用户名和密码,点击登录,发送请求 2.api接收到客户端发起的用户请求 2.1 api对业务逻辑进行验证 2.1.1验证用户名和密码是否合法 比如:用户名要求必须为真实手机号码(11位,1开头,第二位34) 如果验证失败,即用户名不合法,那么需要给客户端发送响应码 比如码值为1,2,3 1代表用户名格式错误 2代表用户名或密码错误 3代表密码格式错误 3.api会将用户输入的数据发给db层 3.1数据库查

监控微信小程序wx.request请求失败

在微信小程序里,与后台服务器交互的主要接口函数是wx.request(),用于发起 HTTPS 网络请求.其重要性不言而喻.然而,却经常遇到请求失败的问题,笔者特意谷歌"wx.request 请求失败",可以搜索到很多相关的文章,下面列出一些: wx.request 失败| 微信开放社区 微信小程序 wx.request 请求失败- SegmentFault 思否 小程序部分机型小程序用户无法发起 wx.request 请求,网络错误问题 ... wx.request()失败,requ

WAF——针对Web应用发起的攻击,包括但不限于以下攻击类型:SQL注入、XSS跨站、Webshell上传、命令注入、非法HTTP协议请求、非授权文件访问等

核心概念 WAF Web应用防火墙(Web Application Firewall),简称WAF. Web攻击 针对Web应用发起的攻击,包括但不限于以下攻击类型:SQL注入.XSS跨站.Webshell上传.命令注入.非法HTTP协议请求.非授权文件访问等.