您好我需要知道如何在多线程应用程序中使用Jsoup代理。当我尝试这个:
System.setProperty("http.proxyHost", myproxy);
System.setProperty("http.proxyPort", myport);
它为我所做的所有威胁设置代理,我需要每个威胁使用自己的代理。这种GET方法很好用:
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("addres", port));
URL url = new URL("address");
URLConnection connect = url.openConnection(proxy);
BufferedReader br = new BufferedReader(new InputStreamReader(connect.getInputStream()));
String tmp;
StringBuilder sb = new StringBuilder();
while((tmp=br.readLine())!=null) sb.append(tmp);
Document c = Jsoup.parse(sb.toString());
但我不知道如何使用Jsoup在每个威胁中使用代理发送POST方法。有人能帮助我吗?
答案 0 :(得分:1)
来自JSoup docs:
jsoup是一个用于处理真实HTML的Java库。它提供了一个非常方便的API,用于提取和操作数据,使用最好的DOM,CSS和类似jquery的方法。
因此,基本上Jsoup是为提取数据而创建的。但是,仍然可以执行POST
个请求,但它不像GET
个请求那么直接。
ocument doc = Jsoup.connect("http://www.facebook.com")
.data("field1", "value2")
.data("field2", "value2")
.userAgent("Mozilla") // Optional
.post();
为了使用代理解决这个问题,可以使用以下方法:
System.setProperty("http.proxyHost", "<proxy-host>");
System.setProperty("http.proxyPort", "<proxy-port>");
或者,对于https
等价物:
System.setProperty("https.proxyHost", "<proxy-host>");
System.setProperty("https.proxyPort", "<proxy-port>");
关于此事,StackOverflow还有很多其他问题。退房: