そのため、サイトにログインして Cookie を保存し、Cookie を提供しながら別のサイトに接続して、Web サイトのスクレイピングを進めようとしています。すべて Jsoup と通常の Java を使用しています (後で Android に移行する予定です)。私の問題は、ログインフォームのあるサイトが https を使用していて、大量のエラーが発生することです。周りを検索した後、このstackoverflow questionを見つけました。この方法では、ログイン サイトから SSL 証明書を取得し、拡張子を .crt から .jks に変更します。ただし、エラーが発生し続けるため、機能させることができません。これが私のコードです
public static void main(String args[]) throws IOException {
//Log in
Connection.Response login = Jsoup.connect("https://login.emu.dk")
.data("login", "myUsername")
.data("pass", "myPassword")
.method(Method.POST)
.execute();
//Keep logged in
Map<String,String> loginCookies = login.cookies();
ArrayList<Lesson> unsorted = new ArrayList<Lesson>();
URL elevplan = new URL("https://elevplan.dk");
CSVParser csvParser = new CSVParser();
System.setProperty("javax.net.ssl.trustStore", "/Users/philipjakobsen/Desktop/login.emu.dk.jks");
System.setProperty("javax.net.ssl.trustStore", "/Users/philipjakobsen/Desktop/login.emu2.dk.jks");
Document doc = Jsoup.connect("https://elevplan.dk")
.cookies(loginCookies)
.get();
では、Jsoup が https 接続を確立できるようにする方法を知っている人はいますか? 前述のように、アプリケーションを Android に「移植」したいと考えています。このシナリオでは、静的証明書 (?) を使用することはできないと思います。
前もって感謝します。