gpt4 book ai didi

java - 从网站提取数据时出现异常

转载 作者:太空宇宙 更新时间:2023-11-04 08:00:04 24 4
gpt4 key购买 nike

我正在使用 Jsoup 从网站中按邮政编码提取数据。邮政编码是从文本文件中读取的并将结果写入控制台。我有大约 1500 个邮政编码。程序抛出两种异常:

org.jsoup.HttpStatusException: HTTP error fetching URL. Status=500, URL=http://www.moving.com/real-estate/city-profile/...

java.net.SocketTimeoutException: Read timed out

我认为解决方案是当时只读取少量数据。因此,我使用计数器从文本文件中计算 200 个邮政编码,并在获得 200 个邮政编码的数据后停止程序 5 分钟。正如我所说,我仍然有异常(exception)。到目前为止,当我看到异常时,我会复制粘贴可用数据,然后继续使用以下邮政编码。但我想不间断地读取所有数据。这可能吗?任何提示将不胜感激。预先感谢您!

这是我用于读取所有数据的代码:

    while (br.ready())
{
count++;

String s = br.readLine();
String str="http://www.moving.com/real-estate/city-profile/results.asp?Zip="+s;
Document doc = Jsoup.connect(str).get();

for (Element table : doc.select("table.DataTbl"))
{
for (Element row : table.select("tr"))
{
Elements tds = row.select("td");
if (tds.size() > 1)
{
if (tds.get(0).text().contains("Per capita income"))
System.out.println(s+","+tds.get(2).text());
}
}
}
if(count%200==0)
{
Thread.sleep(300000);
System.out.println("Stoped for 5 minutes");
}
}

最佳答案

更新此行Document doc = Jsoup.connect(str).get();以将超时设置为:

        Connection conn = Jsoup.connect(str);
conn.timeout(300000); //5 minutes
Document doc = conn.get();

关于java - 从网站提取数据时出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12984961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com