java爬虫爬取https协议的网站时,SSL报错, java.lang.IllegalArgumentException TSLv1.2 报错

目前在广州一家小公司实习,这里的学习环境还是挺好的,今天公司从业十几年的大佬让我检查一下几年前的爬虫程序是否还能使用……

我从myeclipse上check out了大佬的程序,放到workspace中开始试探……

第一个错误出现了:握手失败,https三次握手机制是我遇到的第一个问题……

大佬似乎发现了我的问题,于是过来指导,“你先这样,再这样,就可以了”……

惊慌的我赶快点头,“嗯嗯……”

于是按照大佬的指点,首先在对应的jdk目录下添加文件……

java爬虫爬取https协议的网站时,SSL报错, java.lang.IllegalArgumentException TSLv1.2 报错

java爬虫爬取https协议的网站时,SSL报错, java.lang.IllegalArgumentException TSLv1.2 报错

对应文件我放在百度上了,链接是:链接: https://pan.baidu.com/s/1GpKaF8zlF0ONJf3y_L7igg 提取码: nscm

大佬给我说的是:上面三个压缩包,选择对应的版本,把里面的两个文件:local_policy.jar,US_export_policy.jar覆盖掉,目录就是第一行的目录。

然后在选项:windows-preferences-java-Installed JREs中,点击你的jdk版本,点右边的edit键,在Default VM Arguments中,把调试模式打开,并添加支持的协议类型(建议大家按我这样写)……当然,具体情况需要具体分析,看报什么错。

java爬虫爬取https协议的网站时,SSL报错, java.lang.IllegalArgumentException TSLv1.2 报错

我严格的按照大佬的要求来,发现没用,还是报错,不知道是不是我刚开始把所有的协议都写上去的原因……

但是还是要搞定这个问题啊,于是,我开始疯狂百度,终于让我找到了解决办法。

那就是,下载 bcprov-ext-jdk15on-1.52   bcprov-jdk15on-1.52 这两个jar包,给大家贡献一个下载jar包的网站:https://mvnrepository.com/ 基本上我找jar包都是在这里了……

给大家下载好了这两个文件,放到网盘上:链接: https://pan.baidu.com/s/1Sfw7wxBSySXYpeyJm52Mow 提取码: 3is7

下载好之后,我们把jar包放到 $JAVA_HOME/jre/lib/ext 目录下面,然后编辑 $JAVA_HOME/jre/lib/security/目录下的  java.security  文件……

找到security.provider.9,然后在这句话下面加上:

security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider

之后,就重启一下myeclipse,毕竟重启能解决很多问题……

如果你严格按照我的步骤做到这里,问题基本上应该能解决了,如果还没有解决的话,那就换jdk版本试试。

需要更换项目jdk版本的话吗,请参照我的另一篇随笔……  https://www.cnblogs.com/sixgodbiao/p/10479887.html

上一篇:一加X 手机变砖过程


下一篇:Excel应该这么玩——0、初衷:用IT方法玩Excel