从网站复制特定字符串

时间:2016-01-28 21:11:03

标签: android

作为一名航空爱好者,我正在尝试建立一个Android应用程序以获得METAR / TAF。其中一个项目活动的主要目标是前往https://www.aviationweather.gov/adds/metars/,并阅读用户选择的机场的METAR / TAF(METHEOROLOGICAL REPORTS)。

作为草案项目,我有以下xml(从网页上读取信息并将其粘贴到textViwe中):

    TextView tv = (TextView) findViewById(R.id.textview1);
    try{

        HttpClient cliente = new DefaultHttpClient();

        HttpPost poste = new HttpPost("https://www.aviationweather.gov/adds/metars/?station_ids=LELL&std_trans=standard&chk_metars=on&hoursStr=most+recent+only&chk_tafs=on&submitmet=Submit");


        HttpResponse respuesta = cliente.execute(poste);


        HttpEntity entidad=respuesta.getEntity();


        InputStream mensaje=entidad.getContent();


        StringBuffer sb=new StringBuffer();
        String linea;
        BufferedReader br=new BufferedReader(new InputStreamReader(mensaje,"UTF-8"));



        while((linea=br.readLine())!=null){

            sb.append(linea);
            sb.append("\n");

        }

        tv.setText(sb.toString());

        mensaje.close();

最重要的是,我阅读了整个信息并获得了以下文字*,但我只想显示线条(METAR为红色,TAF为蓝色):

任何想法?

我在这个网站上尝试了很多代码,甚至尝试使用WebView访问网页,但我宁愿在文本视图中将文档信息显示为文本。

提前致谢,

SERGI

2 个答案:

答案 0 :(得分:1)

您可以使用以下Jsoup来访问所需的文字

Document doc = Jsoup.connect("https://www.aviationweather.gov/adds/metars/?station_ids=LELL&std_trans=standard&chk_metars=on&hoursStr=most+recent+only&chk_tafs=on&submitmet=Submit").get();
Elements fontTags = content.getElementsByTag("font");
for (Element fontTag : fontTags) {
     String fontTagText = fontTag.text();
}

答案 1 :(得分:1)

最终代码:

Document doc = Jsoup.connect("https://www.aviationweather.gov/adds/metars/?station_ids=LELL&std_trans=standard&chk_metars=on&hoursStr=most+recent+only&chk_tafs=on&submitmet=Submit").get();

Elements fontTags = doc.getElementsByTag("font");
for (org.jsoup.nodes.Element fontTag : fontTags){
    String frase =fontTags.text();
    TextView hola=(TextView)findViewById(R.id.hello);
    hola.setText(frase);
}