【发布时间】:2018-04-14 08:04:46
【问题描述】:
我正在使用http客户端获取数据:
public static String getHttpResponse(String url) {
//LOGGER.info("Download page context from URL " + url);
String httpClientResponse = null;
try {
URI uri = new URIBuilder(url).build();
HttpResponse response;
HttpHost target = new HttpHost(uri.getHost());
HttpGet request = new HttpGet(uri);
//request.setConfig(config);
request.addHeader(new BasicHeader("User-Agent", "Mozilla/5.0"));
request.addHeader(new BasicHeader("Content-Type", "text/html"));
request.addHeader("Accept-Ranges", "bytes=100-1500");
org.apache.http.client.HttpClient
client = HttpClients.custom().build();
response = client.execute(target, request);
//LOGGER.info("Status Line for URL {} is {}", uri.getHost() + File.separator + uri.getPath(), response.getStatusLine());
InputStream inputStream = response.getEntity().getContent();
if (inputStream == null || response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) {
/*LOGGER.error("Non-success response while downloading image. Response {}", response.getStatusLine());
LOGGER.error("Error while download data from url {}", url);*/
} else {
httpClientResponse = IOUtils.toString(inputStream, CharEncoding.UTF_8);
}
} catch (Exception e) {
System.out.println("Error while download content from URL");
}
return httpClientResponse;
}
另外:我们可以使用 Jsoup 做到这一点吗?
谢谢。
【问题讨论】:
-
好的,但是我应该给出什么范围的字节呢?
标签: java jsoup httpclient