zoukankan      html  css  js  c++  java
  • 巨潮网站爬虫程序修改

    大概是16年写出的巨潮网站信息的爬虫程序。在昨天的程序日志里显示已经不能正常请求到数据了。

    程序报错是:

    java.net.ProtocolException: Server redirected too many  times (20)
    

      

    地址被重定向了20次,程序直接退出。

    后来查到论坛中有人提到:

         “多半是重定向又回到原来的页面了.  ”

    网站做了一点反爬处理?

    之前的请求如下:

    POST
    http://www.cninfo.com.cn/cninfo-new/announcement/query
    
    POST参数:
    column=szse&&columnTitle=历史公告查询&pageNum=1&pageSize=30&tabName=fulltext&seDate=2018-01-10 ~ 2018-01-11
    Content-Type:application/x-www-form-urlencoded

      

    程序最开始写的时候没有写header信息,在原来的url请求函数中设置了UA属性

    conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36");
    

      

    程序再跑起来,还是最初的错误。到在线POST工具上去发送一次请求看什么情况:

    提交后结果:

    第一次正常返回了JSON(没有截到图),

    第二次:

    已经不是UA的问题了。

    之后看到http://blog.csdn.net/qq_34670293/article/details/78041059 给出的解决方案

    在请求之前加上一行代码

    CookieHandler.setDefault(new CookieManager(null, CookiePolicy.ACCEPT_ALL));
    

      

     请求成功了。

    具体类使用方法和作用还在研究。

  • 相关阅读:
    Redis之String
    代码质量管理工具——SonarQube
    XML文件(2)--使用DOM4J示例
    XML文件(1)--使用DOM示例
    Maven之构件
    使用JS,获取URL中指定参数的值
    jQuery导入Eclipse后报错解决方法
    关于MySQL存储过程中遇到的一个错误
    学习MySQL之数据类型(四)
    jmeter直连数据库【转】
  • 原文地址:https://www.cnblogs.com/Jacck/p/8274656.html
Copyright © 2011-2022 走看看