从国家外汇管理局获取人民币外汇汇率。
客户端工具:spring的RestTemplate;jsoup的html解析包(jsoup-1.10.3.jar)。
package com.cbecs.hw.sqlserver.web.controller;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import org.springframework.http.ResponseEntity;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestTemplate;
public class HtmlParse
{
public static void main(String[] args)
{
RestTemplate restTemplate = new RestTemplate();
MultiValueMap<String, String> requestEntity = new LinkedMultiValueMap<>();
requestEntity.add("projectBean.startDate", "2017-10-25");
requestEntity.add("projectBean.endDate", "2017-10-25");
requestEntity.add("queryYN", "true");
ResponseEntity<String> response = restTemplate.postForEntity("http://www.safe.gov.cn/AppStructured/view/project_RMBQuery.action", requestEntity, String.class);
String html = response.getBody();
Document doc = Jsoup.parse(html);
Elements elements = doc.select("table[class=list]");
if (elements.size() == 1)
{
Element table = elements.get(0);
Elements tds = table.select("tr td");
Elements ths = table.select("tr th");
for (int i = 0; i < ths.size(); i++)
{
System.out.println(ths.get(i).text() + ":" + tds.get(i).text());
}
}
}
}