Skip to content

Commit 33e3fcd

Browse files
committed
Revert "代理接口的修改,提供刷星代理API。downloader 下载错误时,提供request,exception,proxyProvider三个参数,"
This reverts commit ba69eba.
1 parent c489647 commit 33e3fcd

File tree

4 files changed

+9
-28
lines changed

4 files changed

+9
-28
lines changed

webmagic-core/src/main/java/us/codecraft/webmagic/downloader/AbstractDownloader.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import us.codecraft.webmagic.Page;
44
import us.codecraft.webmagic.Request;
55
import us.codecraft.webmagic.Site;
6-
import us.codecraft.webmagic.proxy.ProxyProvider;
76
import us.codecraft.webmagic.selector.Html;
87

98
/**
@@ -39,7 +38,7 @@ public Html download(String url, String charset) {
3938
protected void onSuccess(Request request) {
4039
}
4140

42-
protected void onError(Request request, Throwable throwable, ProxyProvider proxyProvider) {
41+
protected void onError(Request request) {
4342
}
4443

4544
}

webmagic-core/src/main/java/us/codecraft/webmagic/downloader/HttpClientDownloader.java

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,19 @@
11
package us.codecraft.webmagic.downloader;
22

3+
import java.io.IOException;
4+
import java.nio.charset.Charset;
5+
import java.util.Map;
6+
import java.util.concurrent.ConcurrentHashMap;
7+
import java.util.function.Predicate;
8+
39
import org.apache.commons.io.IOUtils;
410
import org.apache.http.HttpResponse;
511
import org.apache.http.client.methods.CloseableHttpResponse;
612
import org.apache.http.impl.client.CloseableHttpClient;
713
import org.apache.http.util.EntityUtils;
814
import org.slf4j.Logger;
915
import org.slf4j.LoggerFactory;
16+
1017
import us.codecraft.webmagic.Page;
1118
import us.codecraft.webmagic.Request;
1219
import us.codecraft.webmagic.Site;
@@ -17,13 +24,6 @@
1724
import us.codecraft.webmagic.utils.CharsetUtils;
1825
import us.codecraft.webmagic.utils.HttpClientUtils;
1926

20-
import java.io.IOException;
21-
import java.nio.charset.Charset;
22-
import java.util.HashMap;
23-
import java.util.Map;
24-
import java.util.concurrent.ConcurrentHashMap;
25-
import java.util.function.Predicate;
26-
2727

2828
/**
2929
* The http downloader based on HttpClient.
@@ -92,13 +92,7 @@ public Page download(Request request, Task task) {
9292
return page;
9393
} catch (IOException e) {
9494
logger.warn("download page {} error", request.getUrl(), e);
95-
onError(request, e, proxyProvider);
96-
if (proxyProvider != null && refreshProxyOnError.test(e)) {
97-
proxyProvider.refreshProxy(task);
98-
}
99-
if(refreshClientOnError.test(e)) {
100-
httpClients.remove(task.getSite().getDomain());
101-
}
95+
onError(request);
10296
return page;
10397
} finally {
10498
if (httpResponse != null) {

webmagic-core/src/main/java/us/codecraft/webmagic/proxy/ProxyProvider.java

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,6 @@ public interface ProxyProvider {
1919
*/
2020
void returnProxy(Proxy proxy, Page page, Task task);
2121

22-
/**
23-
* 代理IP是珍贵资源,有可能代理提供者内部代理没有过期,就一直提供某个IP,但这个IP又不可以使用,所以提供一种方式通知提供者,这个代理该刷新了
24-
*
25-
* @param task 下载任务
26-
*/
27-
void refreshProxy(Task task);
28-
2922
/**
3023
* Get a proxy for task by some strategy.
3124
* @param task the download task

webmagic-core/src/main/java/us/codecraft/webmagic/proxy/SimpleProxyProvider.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,6 @@ private SimpleProxyProvider(List<Proxy> proxies, AtomicInteger pointer) {
3030
this.pointer = pointer;
3131
}
3232

33-
@Override
34-
public void refreshProxy(Task task) {
35-
36-
}
37-
3833
public static SimpleProxyProvider from(Proxy... proxies) {
3934
List<Proxy> proxiesTemp = new ArrayList<Proxy>(proxies.length);
4035
for (Proxy proxy : proxies) {

0 commit comments

Comments
 (0)