摘要:簡單使用之前一直使用來獲取的頁面,那么怎么使用呢閑話少敘直接上代碼吧該段代碼重點在于的定義如果不設置超時時間,當批量操作大量網(wǎng)頁的時候,會出現(xiàn)等待假死的情況。這種情況是特別嚴重的,會大大提高人工,所以加入超時設定來控制。
HttpClient4.x簡單使用
之前一直使用HttpClient4來獲取URL的頁面,那么HttpClient怎么使用呢?閑話少敘直接上代碼吧!
public class HTTPUtils { private static CloseableHttpClient httpClient; private static RequestConfig requestConfig = RequestConfig.custom() .setSocketTimeout(5000).setConnectTimeout(5000).build(); /** * * @param url * @return * @throws IOException */ public static String getHTML(String url) throws IOException { httpClient = HttpClients.createDefault(); HttpGet request = new HttpGet(url); request.setConfig(requestConfig); HttpResponse response = httpClient.execute(request); HttpEntity entity = response.getEntity(); // ContentType contentType = ContentType.get(entity); String html = EntityUtils.toString(entity, "GB18030"); httpClient.close(); // httpClient.getConnectionManager().shutdown(); return html; } }
該段代碼重點在于requestConfig的定義,如果不設置超時時間,當批量操作大量網(wǎng)頁的時候,會出現(xiàn)等待假死的情況。這種情況是特別嚴重的,會大大提高人工,所以加入超時設定來控制。獲取html頁面的時候,需要設置一下頁面編碼,否則默認ISO_8859_1字符編碼。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/35741.html