当前位置: 首页 > 面试题库 >

jsoup没有获得完整的数据

柯波
2023-03-14
问题内容

我有一个学校项目,可以解析网络代码并将其像数据库一样使用。当我尝试从(https://www.marathonbet.com/en/betting/Football/)提取数据时,我没有全部了解吗?

这是我的代码:

Document doc = Jsoup.connect("https://www.marathonbet.com/en/betting/Football/").get();
Elements newsHeadlines = doc.select("div#container_EVENTS");

for (Element e: newsHeadlines.select("[id^=container_]")) {
    System.out.println(e.select("[class^=block-events-head]").first().text());
    System.out.println(e.select("[class^=foot-market]").select("[class^=event]").text());
}

获得的结果(这是显示的联赛的最后一个):

Football. Friendlies. Internationals All bets Main bets
1. USA 2. Mexico 16 Apr 01:30 +124 7/5 23/10 111/50 +124

在她上面显示所有联赛。

为什么我没有完整的数据?感谢您的时间!


问题答案:

Jsoup的默认正文响应限制为1MB。您可以使用
maxBodySize

(int)
将其更改为所需的任何值
****

设置在关闭连接并截断输入之前从(未压缩)连接读取到主体的最大字节。默认最大值为1MB。最大大小为零将被视为一个无限量(仅由您的耐心和计算机上的可用内存限制)。

例如:

Document doc = Jsoup.get(url).userAgent(ua).maxBodySize(0).get();

您可能希望查看Connection中的其他选项,有关如何设置请求超时,用户代理等。



 类似资料:
  • 我正在刮网页使用JSoup库通过选择类属性,其中包含"nav"字符串。 这是获取网站超文本标记语言的代码: 正如您所看到的,id=“varPreviewMenu”的ul元素包含Jsoup检索到的HTML不包含的li元素。 我怎样才能得到那些元素?

  • 你好,我一直在尝试自动化监控一个站点,但它“响应”多个文档,我想知道如何浏览他们或选择哪一个我想要分析。 代码非常简单: 站点这样“回应”: 它不允许我发布图片,但这里有链接: 如何选择不同的单据而不是第一个单据?

  • 在过去的几天里做了一些阅读后,我已经取得了一些进展,下面是我想出的代码: 主要活动: HTTPRequest 没有错误,一切运行正常,但问题是-我已经建立了这个代码作为一个测试,如果我可以登录我试图登录的网站,但我无法从中获得任何信息。在我按下按钮后,似乎发生了什么事情,我发送到用户界面线程的输入流给了我这个:“java.io.BufferedInputStream@afe19b8”,每次按下按钮

  • 我正在尝试用JSOUP从以下页面获取内容:

  • 我有一个元素列表,我正在使用JSOUP的方法attr()来获取href属性。下面是我的部分代码: 例如,当我使用搜索prase“test”时,attr(“href”)生成(列表的第一个): linkHref=https://www.tutorialspoint.com/software_testing/&sa=u&ved=0ahukewi_li-t69jtahxibxqkhu1kblaqfggtm

  • 我正在使用Volley向API发出GET请求: 预期的JSON对象响应很大(可能高达500 KB)。我无法在日志中看到完整的响应。仅显示前50行左右。我还得到了info: BasicNetwork.log慢速请求:请求的HTTP响应= 这意味着请求需要超过3000毫秒。 尝试过的事情: 我已经在手机的开发者选项中将记录器缓冲区大小增加到1M。 原因可能是什么?当它很大的时候,响应是大块发送的吗?如