私はデータを掻き取ろうとしているASP Webサイトを持っています。ウェブサイトには、進捗バーを表示した後に結果を返す検索ページがあります。結果は同じページに返されます。私はJavaでスクレイピングスクリプトを書いています。しかし、それは私の結果を表示せずにWebページを表示し続けます。同じページに表示される結果の内容が必要です。Javaを使用してASP Webサイトからデータをスクラップする方法は?
投稿リクエストでパラメータを送信していますが、結果ページが表示されることを期待しています。 私はHtmlUnitと基本的なJavaの要求応答を使用しようとしましたが、それは動作しませんでした。 私を助けてください。ベローは私のコードスニペットです。念のため。
URL url = new URL(base_url);
HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
response = print_content(connection);
String viewstate = get_view_state(response);
connection.disconnect();
url_params = "my-necessary-url-params";
WebClient client = new WebClient(BrowserVersion.CHROME);
WebRequest request = new WebRequest(url, HttpMethod.POST);
request .setAdditionalHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
request .setRequestBody(url_params);
try {
HtmlPage page = client.getPage(cswa_request);
client.waitForBackgroundJavaScriptStartingBefore(5000);
client.getOptions().setThrowExceptionOnFailingStatusCode(true);
} catch (Exception e) {
System.out.println(e.getMessage());
}
ご意見やご感想はありがとうございます。ありがとう。
ウェブサイトはおそらくAJAX経由で検索結果を読み込んでいます。そのAPIのURLを調べる必要があります。 – Thilo
@Thilo AJAXリクエストはありません。表示されるのは1つのデータベース結果だけです。 – Nevermore
あなたがダウンボートの場合。理由を述べてください。ありがとう – Nevermore