爬虫415(UNsupported media type)问题解决

爬虫415(UNsupported media type)问题解决爬虫遇到的问题:这两天做爬虫遇到些问题,我在这里总结一下,希望能够和大家分享,共同学习,共同进步。今天在我爬某个网站的时候,返回的结果是415,不支持的媒体类型(Unsupportedmediatype),当时遇到这个问题的时候,我有点蒙,什么是媒体,在这里先不管他什么是媒体,反正就是报错,但是能肯定的是415错误肯定是请求的问题。那么我就开始顺着我的爬虫经验挨个排除。1、我的IP有没有被封

大家好,又见面了,我是你们的朋友全栈君。

爬虫遇到的问题:

这两天做爬虫遇到些问题,我在这里总结一下,希望能够和大家分享,共同学习,共同进步。


今天在我爬某个网站的时候,返回的结果是415,不支持的媒体类型(Unsupported media type),当时遇到这个问题的时候,我有点蒙,什么是媒体,在这里先不管他什么是媒体,反正就是报错,但是能肯定的是415错误肯定是请求的问题。那么我就开始顺着我的爬虫经验挨个排除。
1、我的IP有没有被封?
2、这个请求是post/get?
3、请求头是否正确?
4、参数都是否正确?
但凡要记住做爬虫要细心去研究请求过程。
1、IP绝对没有封,因为我用的是公司的代理,同时在我的浏览器上面可以访问,排除IP被封。
2、弄清楚这个请求是post/get请求,我确定了这个请求“http://cq.gsxt.gov.cn/gsxt/api/ebaseinfo/queryForm/“+pripid+”/1?currentpage=1&pagesize=5&t=”+System.currentTimeMillis();是get请求,排除post请求。
3、get请求和post请求在爬虫看来最大的差别就是,post请求参数都写在了请求地址的“?”后面,而get请求的参数要写在request请求类里面。问题到这我先把request.requestBody = null;这样get请求才不会受到之前做过post请求参数的干扰。把各种请求头信息都加上了(请求头不要写错了,千万不能带着问题区找问题),发现还是报Unsupported media type错误。这个时候我就开始怀疑我之前写的get请求是不是有多写请求信息的问题,才想到这个问题,这时候就看到我上一个get多写了几个请求信息,这里我要强调一下,由于不知道请求头信息那个是必要的,这时候做爬虫就要一个一个的去试,请求成功了之后一定要记得把之前写的多余的请求信息给去掉,不然会影响下面的请求(这个不是肯定,建议去掉多余的请求信息)。
4、参数是post特有的。


一个小小的问题困扰我了好久,工作效率就是这样慢慢积累起来的。关注我,我会经常更新关于爬虫时遇到的问题的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135344.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Redis 6_redis scan keys

    Redis 6_redis scan keysJedis是java开发的操作redis的工具包。

    2025年10月17日
    6
  • 数据库概念结构设计_数据库概念结构设计怎么写

    数据库概念结构设计_数据库概念结构设计怎么写一、概念模型在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,然后才能更改、更准确地用某一数据库管理系统实现这些需求。概念模型的主要特点:1.能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是现实世界的一个真是模型。2.易于理解,可以用它和不熟悉计算机的用户交换意见。用户的积极参与是数据库设计成功的关键。3.易于更改,当应用环境和应用要求改变时容易对概念模型修改和扩充。4.易于向关系、网状、层次等各种数据模型转换…

    2022年10月12日
    5
  • 软件测试外包_为什么不能去外包公司

    软件测试外包_为什么不能去外包公司【随笔】测试外包的正确打开方式

    2022年4月21日
    56
  • C语言中动态分配数组

    C语言中动态分配数组很多人在编写C语言代码的时候很少使用动态数组,不管什么情况下通通使用静态数组的方法来解决,在当初学习C语言的时候我就是一个典型的例子,但是现在发现这是一个相当不好的习惯,甚至可能导致编写的程序出现一些致命的错误。尤其对于搞嵌入式的人来所,嵌入式系统的内存是宝贵的,内存是否高效率的使用往往意味着嵌入式设备是否高质量和高性能,所以高效的使用内存对我们来说是很重要的。那么我们在自己编写C语言代码的时候就…

    2022年7月22日
    8
  • ip addr命令详解_ip link命令

    ip addr命令详解_ip link命令Windows上查看IP地址是ipconfig命令。Linux上查看IP地址是ifconfig命令。Linux上还有一个ipaddr命令可以查看IP地址。博主使用标准版ISO镜像文件安装的CentOS7没有ifconfig命令,但有ipaddr命令。其实通过这几个命令查到的IP都是私网IP,想要了解详情可以阅读这篇博客:为什么百度查到的IP和ipconfig命令的结果不一样、详解公网IP、私网IP、网络分类(A、B、C)ipaddr命令结果有两部分,lo和enp0s3,如果有多

    2022年7月28日
    26
  • java数组转对象_java之数组和对象的互转「建议收藏」

    java数组转对象_java之数组和对象的互转「建议收藏」java*对象转bytes和bytes转对象**@projectorder*@fileNameByteUtil.java*@Description*@authorlight-zhang*@date2019年5月16日*@version1.0.0*/publicclassByteUtil{/***对象转数组**@paramobj*@return*/public…

    2025年10月19日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号