Jsoup 与 httpClient 获取网络资源
2017-11-14 17:52
232 查看
背景:调用openedx api 获取返回响应结果
http://mvnrepository.com/ 搜索后下载所需jar
//HTML解析器(edx项目使用)
compile group: 'org.jsoup', name: 'jsoup', version: '1.10.3'
//httpClient请求响应 (edx项目使用)
compile group: 'commons-logging', name: 'commons-logging', version: '1.1.1'
compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.2'
compile group: 'org.apache.httpcomponents', name: 'httpcore', version: '4.4.6'
compile group: 'org.apache.httpcomponents', name: 'httpmime', version: '4.5.2'
public static String getCourseWithHttpClient() {
httpClient = HttpClients.createDefault();
CloseableHttpResponse response = null;
BufferedReader reader = null;
HttpGet httpGet = new HttpGet(url);
try {
response = httpClient.execute(httpGet);
HttpEntity entity = response.getEntity();
reader = new BufferedReader(new InputStreamReader(entity.getContent(), "utf-8"));
courses = reader.readLine();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
logger.info(" courses :" + courses);
return courses;
}
http://mvnrepository.com/ 搜索后下载所需jar
//HTML解析器(edx项目使用)
compile group: 'org.jsoup', name: 'jsoup', version: '1.10.3'
//爬取网页所需部分内容 public static String getHTML(String url){ String finalResult = null; try { Document document = Jsoup.connect(url) .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31") .timeout(60000) .get(); Elements resultElement = document.getElementsByClass("response-info"); String resultString = resultElement.toString(); finalResult= resultString.substring(resultString.indexOf("{"),resultString.lastIndexOf("}")+1); while(finalResult.contains("</a>")){ String hrefString = finalResult.substring(finalResult.indexOf("<a"), finalResult.indexOf("</a>")+4); String finalHref = hrefString.substring(hrefString.indexOf(">")+1, hrefString.lastIndexOf("<")); finalResult = finalResult.replace(hrefString, finalHref); } } catch (IOException e) { e.printStackTrace(); } return finalResult; }
//httpClient请求响应 (edx项目使用)
compile group: 'commons-logging', name: 'commons-logging', version: '1.1.1'
compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.2'
compile group: 'org.apache.httpcomponents', name: 'httpcore', version: '4.4.6'
compile group: 'org.apache.httpcomponents', name: 'httpmime', version: '4.5.2'
public static String getCourseWithHttpClient() {
httpClient = HttpClients.createDefault();
CloseableHttpResponse response = null;
BufferedReader reader = null;
HttpGet httpGet = new HttpGet(url);
try {
response = httpClient.execute(httpGet);
HttpEntity entity = response.getEntity();
reader = new BufferedReader(new InputStreamReader(entity.getContent(), "utf-8"));
courses = reader.readLine();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
logger.info(" courses :" + courses);
return courses;
}
相关文章推荐
- Android 通过 HttpClient 获取网络资源
- Java爬虫进阶-Jsoup+httpclient获取动态生成的数据
- 通过HTTP获取网络资源
- Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)
- Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)
- JDK6.0学习笔记(十五)获取HTTP网络资源
- 简单使用URLConnection、HttpURLConnection和HttpClient访问网络资源
- 使用java7的try-resource-wi 3ff0 th语法用httpclient抓取网页并用jsoup获取网页对象
- Java-HttpClient-EntityUtils获取网络图片
- Android HttpURLConnection和HttpClient获取网络内容
- Android 中的两种请求网络资源的方式:HttpClient和HttpURLConnection
- HttpClient获取网络数据
- httpClient获取Jsoup解析网页
- httpclientpost网络获取数据
- Android HttpClient多线程获取网络数据抛出ConnectionPoolTimeoutException: Timeout waiting for connection
- HttpClient网络请求获取网络图片
- 利用AsyncHttpClient获取网络文本
- 【.Net MF网络开发板研究-03】获取雅虎天气(HttpClient示例)
- HttpClient 获取网络数据
- 自己写http获取网络资源和解析json数据