java爬蟲爬取https協議的網站時,SSL報錯, java.lang.IllegalArgumentException TSLv1.2 報錯


目前在廣州一家小公司實習,這里的學習環境還是挺好的,今天公司從業十幾年的大佬讓我檢查一下幾年前的爬蟲程序是否還能使用……

我從myeclipse上check out了大佬的程序,放到workspace中開始試探……

第一個錯誤出現了:握手失敗,https三次握手機制是我遇到的第一個問題……

大佬似乎發現了我的問題,於是過來指導,“你先這樣,再這樣,就可以了”……

驚慌的我趕快點頭,“嗯嗯……”

於是按照大佬的指點,首先在對應的jdk目錄下添加文件……

 

 對應文件我放在百度上了,鏈接是:鏈接: 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中,把調試模式打開,並添加支持的協議類型(建議大家按我這樣寫)……當然,具體情況需要具體分析,看報什么錯。

 

我嚴格的按照大佬的要求來,發現沒用,還是報錯,不知道是不是我剛開始把所有的協議都寫上去的原因……

但是還是要搞定這個問題啊,於是,我開始瘋狂百度,終於讓我找到了解決辦法。

那就是,下載 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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM