このエンドポイントでページ番号が付けられたデータが返されることは承知していますか?あなたのURLは、最初のページから20のエントリを求めます。これらのエントリの順序は指定されていないと仮定して、このエンドポイントを呼び出すたびに異なるデータを取得できるようにします。特定のソート順を決定できるURLパラメータがあるかどうかを確認します。
とにかくすべての2037項目を読むには、順番にそれを行う必要があります。
final String baseUrl = "http://www.juso.go.kr/addrlink/addrLinkApi.do";
final String key = "U01TX0FVVEgyMDE3MDYyODE0MTYyMzIyMTcw";
final String keyword = "연남동";
final int perPage = 100;
int currentPage = 1;
while (true) {
System.out.println("Downloading data from page " + currentPage);
final String url = String.format("%s?confmKey=%s¤tPage=%d&countPerPage=%d&keyword=%s", baseUrl, key, currentPage, perPage, keyword);
final Document document = Jsoup.connect(url).maxBodySize(0).get();
final Elements jusos = document.getElementsByTag("juso");
System.out.println("Found " + jusos.size() + " juso entries");
if (jusos.size() == 0) {
break;
}
currentPage += 1;
}
私たちは、1ページにつき100個のエントリ(つまり、このエンドポイントがサポートする最大数です)、我々は、特定のページを要求している限り、21回それを呼び出す任意の<juso>
要素を返すために求めている。この場合:次のコードを調べ。あなたの問題解決に役立つことを願っています。
いいえ、それはありません。サイトにログインする必要はありません。認証はすでに取得済みの確認キーだけです。ありがとう –
ブラウザのすべてのクッキーとキャッシュをクリアしてもう一度試してみましたか?ブラウザをできるだけサーバーの状態に近づけてください。 –
私は問題がブラウザと関係があるとは思わない。 –