ここにはリアクタNoobがあります。Reactor 3.x(Java):ウェブ掻き取りのため
これは、HowTo質問の詳細です。
私は、検索結果のページ単位のセットを含むスクラップしたいウェブサイトを持っているとしましょう。検索結果ページの数は不明です。各検索ページには、次のページへのリンクがあります。私はすべてのページからすべての検索結果を削り取り、それぞれの検索結果を処理したいと思います。
Reactor(Mono/Flux)をJavaでどのように使用すればよいですか?
できるだけ「反応的」にしたいと思います。
基本的には、以下の不可欠の擬似コードの炉(3.xの)バージョン:
String url = "http://example.com/search/1";
Optional<Document> docOp = getNextPage(url); (1)
while (docOp.isPresent()) {
Document doc = docOp.get();
processDoc(doc); (2)
docOp = getNextPage(getNextUrl(doc)); (3)
}
// (1) Get the first page of search results
// (2) Process all the search results on this page asynchronously
// (3) Find the next page URL, and get that page