javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

原因:https出现信任弹出(访问网页时候弹出是否信任)

解决方案:忽略ssl证书

创建一个类忽略ssl证书

TrustSSL.java
import java.io.*;
import java.net.*;
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import javax.net.ssl.*;public class TrustSSL {private static class TrustAnyTrustManager implements X509TrustManager {public void checkClientTrusted(X509Certificate[] chain, String authType)throws CertificateException {}public void checkServerTrusted(X509Certificate[] chain, String authType)throws CertificateException {}public X509Certificate[] getAcceptedIssuers() {return new X509Certificate[] {};}}private static class TrustAnyHostnameVerifier implements HostnameVerifier {public boolean verify(String hostname, SSLSession session) {return true;}}public static InputStream HttpsSSL(URL strUrl){try {SSLContext sc = SSLContext.getInstance("SSL");sc.init(null, new TrustManager[] { new TrustAnyTrustManager() },new java.security.SecureRandom());HttpsURLConnection conn = (HttpsURLConnection) strUrl.openConnection();conn.setSSLSocketFactory(sc.getSocketFactory());conn.setHostnameVerifier(new TrustAnyHostnameVerifier());//设置超时间为5秒conn.setConnectTimeout(5 * 1000);//防止屏蔽程序抓取而返回403错误conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");conn.connect();//获取服务器响应代码int responsecode = conn.getResponseCode();if (responsecode == 200) {//得到输入流return conn.getInputStream();} else {System.out.println("获取不到 " + strUrl + " 源码,服务器响应代码为:" + responsecode);return null;}} catch (NoSuchAlgorithmException e) {e.printStackTrace();} catch (KeyManagementException e) {e.printStackTrace();}catch (IOException e) {e.printStackTrace();}return null;}public static void main(String[] args) throws Exception {HttpsSSL(new URL("url"));}
}

调用:

成功获取网页内容

转载于:https://www.cnblogs.com/weibanggang/p/11331524.html

Java爬虫https网页内容报错SSLHandshakeException信任(忽略)所有SSL证书相关推荐

  1. 已解决(Python爬虫requests库报错 请求异常SSL错误,证书认证失败问题)requests.exceptions.SSLError: HTTPSConnectionPool

    成功解决(Python爬虫requests库报错 请求异常,SSL错误,证书认证失败问题)requests.exceptions.SSLError: HTTPSConnectionPool(host= ...

  2. python https请求报错:SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] 解决方法

    python爬虫,使用requests库发送https请求报错:SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] 解决方法: imp ...

  3. java poi读取excel报错Your InputStream was neither an OLE2 stream, nor an OOXML stream

    错误描述 java poi读取excel报错Your InputStream was neither an OLE2 stream, nor an OOXML stream 楼主是读取的另存为的exc ...

  4. DirectX 安装报错: 不能信任一个安装所需的压缩文件,请检查加密服务是否启用并且cabinet文件证书是否有效...

    DirectX 安装报错 不能信任一个安装所需的压缩文件,请检查加密服务是否启用并且cabinet文件证书是否有效 是直播软件open broadcaster software,这个软件安装的时候提示 ...

  5. 一脸懵逼加从入门到绝望学习hadoop之Caused by: java.net.UnknownHostException: master报错...

    一脸懵逼加从入门到绝望学习hadoop之Caused by: java.net.UnknownHostException: master报错 windows下开发hadoop应用程序,hadoop部署 ...

  6. java正常运行但javac报错

    环境变量设置完,cmd中java正常运行但javac报错 出错场景 探索 解决 总结 不想看过程直接看总结吧,节省时间. 废话开始: 出错场景 最近上课需要进行web开发,用tomcat要配置java ...

  7. java调用oracle过程,JAVA调用ORACLE存储过程报错

    当前位置:我的异常网» Java Web开发 » JAVA调用ORACLE存储过程报错 JAVA调用ORACLE存储过程报错 www.myexceptions.net  网友分享于:2015-07-1 ...

  8. java import javax.mail.*报错原因

    java import javax.mail.*报错原因:缺少收发邮件的jar包 下载地址: http://www.oracle.com/technetwork/java/javamail/javam ...

  9. Java pdf转jpg报错

    Java pdf转jpg报错 这是报错信息,空指针是字体找不到吗 求各位大佬帮忙

最新文章

  1. 【小妙招】【旧版】欢庆网自动搜索请柬console方法
  2. DNS 映射解析应用(二)
  3. SAP 将smartforms的报表转成PDF
  4. [转]Android 代码混淆和加固 so库 简单教你一行代码实现
  5. 【CCF】201609-2火车购票
  6. python字符串二(find();index();count();rfind();rindex();replace();替换;.split();分割;join();合并)
  7. HDU - 5493 Queue 2015 ACM/ICPC Asia Regional Hefei Online(线段树)
  8. 3.调整web框架行为 3.1配置路径匹配形式
  9. (转)区块链:为什么说finchain是下一代金融应用平台
  10. AHCI和IDE的区别,如何在AHCI模式下安装系统
  11. E45: 'readonly' option is set (add ! to override)报错如何解决
  12. 必知必会--HashMap容量细节
  13. WS824分机号码设置
  14. 怎样在word中画横线
  15. 如何用excel做多元回归分析
  16. display:dp:edid/e-edid/displayid
  17. WorldFirst靠谱吗?跨境收款工具万里汇WorldFirst介绍!
  18. Flume OG和Flume NG的区别
  19. Mkv转MP4方法集合整理
  20. docker--扩展学习-网络--原理--16

热门文章

  1. Flutter实现动画卡片式Tab导航 | 掘金技术征文
  2. BurpSuite插件开发指南之 Java 篇
  3. Python回顾与整理10:模块
  4. openwrt l7过滤qos配置
  5. Linux rpm 命令参数
  6. 11.cadence.通孔类封装创建[原创]
  7. Lucene 学习笔记(一)
  8. 计算机文化基础教程教案,新版《计算机文化基础》教案.doc
  9. htmlparser解析网页内容代码
  10. vc采集网页内frame框架下所有元素(不指定具体table/form)