Commit 24563aff authored by shenjunlin's avatar shenjunlin

fix bg

parent a62c8537
...@@ -88,6 +88,10 @@ public class HttpClientDownloader extends AbstractDownloader { ...@@ -88,6 +88,10 @@ public class HttpClientDownloader extends AbstractDownloader {
} catch (IOException e) { } catch (IOException e) {
logger.warn("download page {} error", request.getUrl(), e); logger.warn("download page {} error", request.getUrl(), e);
onError(request); onError(request);
//移除代理
if (proxyProvider != null && proxy != null) {
proxyProvider.deleteProxy(proxy);
}
return page; return page;
} finally { } finally {
if (httpResponse != null) { if (httpResponse != null) {
......
...@@ -26,4 +26,10 @@ public interface ProxyProvider { ...@@ -26,4 +26,10 @@ public interface ProxyProvider {
*/ */
Proxy getProxy(Task task); Proxy getProxy(Task task);
/**
* 代理不可用时,移除代理
* @param proxy
*/
void deleteProxy(Proxy proxy);
} }
...@@ -64,4 +64,9 @@ public class SimpleProxyProvider implements ProxyProvider { ...@@ -64,4 +64,9 @@ public class SimpleProxyProvider implements ProxyProvider {
} }
return p % size; return p % size;
} }
@Override
public void deleteProxy(Proxy proxy) {
proxies.remove(proxy);
}
} }
...@@ -65,7 +65,12 @@ public class Data5UProxyProvider implements ProxyProvider{ ...@@ -65,7 +65,12 @@ public class Data5UProxyProvider implements ProxyProvider{
return proxy; return proxy;
} }
// public static void main(String[] args) { @Override
public void deleteProxy(Proxy proxy) {
proxyCache.cleanUp();
}
// public static void main(String[] args) {
// Data5UProxyProvider proxyProvider = new Data5UProxyProvider("b323ab32e6ca1be6b803291943d47b62"); // Data5UProxyProvider proxyProvider = new Data5UProxyProvider("b323ab32e6ca1be6b803291943d47b62");
// try { // try {
// System.out.println(proxyProvider.getProxyFromData5u()); // System.out.println(proxyProvider.getProxyFromData5u());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment