Jsoup 解析网页报异常

J2EE 码拜 10年前 (2015-04-06) 3012次浏览 0个评论

我采用的是多线程解析网页信息,当解析一定时间之后
就会报
Connection reset或者read time out错误,
我的代码是
Document doc = Jsoup.connect(url).timeout(3000).userAgent(“Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0”)).get();

异常是
java.net.SocketException: Connection reset
请高手帮我分析分析
应该如何解决

Jsoup 解析网页报异常
求各位大神帮们
回帖就送分!
Jsoup 解析网页报异常
2分
.timeout(3000)去掉
Jsoup 解析网页报异常
引用 2 楼 fangmingshijie 的回复:

.timeout(3000)去掉

不行啊
去掉之后运行还是会报
java.net.SocketTimeoutException: Read timed out

Jsoup 解析网页报异常
4分
不是什么网站你都能连接的 有些网站的反爬虫做得好 不让你用代码这么连
Jsoup 解析网页报异常
4分
估计应该是你多线程没写好!
先跑单线程试试!
Jsoup 解析网页报异常
引用 5 楼 longtian1213 的回复:

估计应该是你多线程没写好!
先跑单线程试试!

如果在超时的时候 在catch里边让线程暂停几秒钟 之后再联接的话,超时的次数就能少点,但是当所有的线程运行的时间长点的情况,还是会一直报异常。
老板要求用多线程 因为数据量太大,如果用单线程的话 运行时间就有点太长了

Jsoup 解析网页报异常
引用 4 楼 zyrobert 的回复:

不是什么网站你都能连接的 有些网站的反爬虫做得好 不让你用代码这么连

那怎么能看出来哪个网站让爬 哪个网站不让爬呢?
有些画面我在解析的时候报302 是不是就意味着不让爬呢?

Jsoup 解析网页报异常
2分
引用 7 楼 cuiyang_0227 的回复:
Quote: 引用 4 楼 zyrobert 的回复:

不是什么网站你都能连接的 有些网站的反爬虫做得好 不让你用代码这么连

那怎么能看出来哪个网站让爬 哪个网站不让爬呢?
有些画面我在解析的时候报302 是不是就意味着不让爬呢?

302是重定向

Jsoup 解析网页报异常
2分
引用 7 楼 cuiyang_0227 的回复:
Quote: 引用 4 楼 zyrobert 的回复:

不是什么网站你都能连接的 有些网站的反爬虫做得好 不让你用代码这么连

那怎么能看出来哪个网站让爬 哪个网站不让爬呢?
有些画面我在解析的时候报302 是不是就意味着不让爬呢?

你需要从重定向的header里去获取location的新地址

Jsoup 解析网页报异常
引用 9 楼 sd4000784 的回复:
Quote: 引用 7 楼 cuiyang_0227 的回复:
Quote: 引用 4 楼 zyrobert 的回复:

不是什么网站你都能连接的 有些网站的反爬虫做得好 不让你用代码这么连

那怎么能看出来哪个网站让爬 哪个网站不让爬呢?
有些画面我在解析的时候报302 是不是就意味着不让爬呢?

你需要从重定向的header里去获取location的新地址

我调查了 这个在基类里已经处理过,如果出现302的问题 会获取location的新地址,但是还是会报302的问题。

Jsoup 解析网页报异常
2分
11.避免URL重定向。URL redirects are made using HTTP status codes 301 and 302. They tell the browser to go to another location.
Jsoup 解析网页报异常
2分
setTimeOut时间长一点
Jsoup 解析网页报异常
2分
还是用httpclient 然后在用jsoup解析吧
Jsoup 解析网页报异常
引用 12 楼 jacal1 的回复:

setTimeOut时间长一点

有段时间没做那个项目了,记得当时最后是把settimeout设置大了些之后,能好一点点,不过在多次解析的时候,还是时不时会出现问题。

Jsoup 解析网页报异常
Document doc=null;
org.jsoup.Connection conn = Jsoup.connect(url);
conn.timeout(5000);
doc = conn.get();

设置一下


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Jsoup 解析网页报异常
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!