我有一个问题与我要从中获取数据的站点的功能有关。 在实践中,当我下载网站的HTML时,它会下载所有内容,但不下载我想要的数据,我注意到当您在我想要的数据出来之前打开网站时,会有一个gif缓冲,因此我增加了很多秒的延迟(还尝试了几分钟,但结果没有改变)以允许htmlUnit加载该网站,但显然,问题不在于此。我整个下午都在寻找答案,但一无所获。
我离开了您的网站:https://www.finderbet.it/surebet/
和代码:
import com.gargoylesoftware.htmlunit.*;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import java.io.IOException;
public class Scrapper {
private static final String url="https://www.finderbet.it/surebet/";
public static void main(String[] args) {
WebClient client= new WebClient(BrowserVersion.BEST_SUPPORTED);
client.getOptions().setCssEnabled(false);
client.getOptions().setJavaScriptEnabled(false);
try {
HtmlPage page= client.getPage(url);
Thread.sleep(10000);
System.out.println(page.asXml());
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
答案 0 :(得分:0)
您看到的那个“缓冲区”是一个AJAX调用-如果您要直接调用它的话..它会提供您要查找的数据。 IE浏览器
finderbet.it/wp-json/bet/v1/getItems
您可以使用get
参数来过滤JSON,包括分页IE
https://www.finderbet.it/wp-json/bet/v1/getItems?surebet_do_set_filter=NOPE&action-set-filtri_nonce=d20ddf9c95&bookmakers=&sports=&data_evento_da=&data_evento_a=&profitto_min=&puntate=tutti&orderBy=profitto&order=desc&page=1
细分为:
https://www.finderbet.it/wp-json/bet/v1/getItems
surebet_do_set_filter=NOPE
action-set-filtri_nonce=d20ddf9c95
bookmakers=
sports=
data_evento_da=
data_evento_a=
profitto_min=
puntate=tutti
orderBy=profitto
order=desc
page=1