如何向 Jsoup 添加代理支持?
我是Java的初学者,我的第一个任务是解析大约10,000个URL并从中提取一些信息,为此我使用Jsoup并且工作正常。
但现在我想为它添加代理支持。代理也有用户名和密码。
我是Java的初学者,我的第一个任务是解析大约10,000个URL并从中提取一些信息,为此我使用Jsoup并且工作正常。
但现在我想为它添加代理支持。代理也有用户名和密码。
您可以轻松设置代理
System.setProperty("http.proxyHost", "192.168.5.1");
System.setProperty("http.proxyPort", "1080");
Document doc = Jsoup.connect("www.google.com").get();
Jsoup 1.9.1 及更高版本:(推荐的方法)
// Fetch url with proxy
Document doc = Jsoup //
.connect("http://www.example.com/") //
.proxy("127.0.0.1", 8080) // sets a HTTP proxy
.userAgent("Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2") //
.header("Content-Language", "en-US") //
.get();
您还可以使用重载 Jsoup#proxy,它采用代理类(见下文)。
在 Jsoup 1.9.1 之前:(详细方法)
// Setup proxy
Proxy proxy = new Proxy( //
Proxy.Type.HTTP, //
InetSocketAddress.createUnresolved("127.0.0.1", 8080) //
);
// Fetch url with proxy
Document doc = Jsoup //
.connect("http://www.example.com/") //
.proxy(proxy) //
.userAgent("Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2") //
.header("Content-Language", "en-US") //
.get();
引用: