如何显示jsoup解析数据

时间:2013-02-19 01:17:02

标签: android html parsing cordova jsoup

我正在尝试从只有一个正文的HTML页面进行解析,并且在正文中是一个预标签,但就是这样。我需要从中获取信息并将其放入我使用phonegap的Android应用程序中。我非常了解javascript。我听说Jsoup会运行良好,但我不知道如何输出使用Jsoup作为我可以显示的文本提取的数据。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

你可以这样试试。

try {
        Document doc = Jsoup.connect(url).get();
        Element element = doc.select("input[name=username]").first();
        String get_value = element.attr("value");
        Log.e(Tag, get_value);
        }
    } catch (Exception e) {
        // TODO Auto-generated catch block
        Log.e(Tag, e.toString());
    }

如果html如下:

<........
 ...........>
 <........>
<input name='username' value='fantastic' type='text' .... />
<........
 ...........>
 <........>

输出为fantastic

<强>被修改

适用于您的情况:

new Thread( new Runnable() {
    @Override
    public void run() {
       try {
           Document doc = Jsoup.connect(url).get();
           Element element = doc.select("body").first();
           String get_value = element.text();
           Log.e(Tag, get_value);
       } catch (Exception e) {
           // TODO Auto-generated catch block
           Log.e(Tag, e.toString());
       }
     }
   }).start();

N.B:我没有运行此代码。但你应该试试这个。

如何使用它:

public class MainActivity extends FacebookActivity {
    private TextView textview;
    private String get_value;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    textview = (TextView)findViewById(R.id.your_textview_id);

    new Thread( new Runnable() {
         @Override
         public void run() {
            try {
                // marked for your use
                Document doc = Jsoup.connect(url).get();
                Element element = doc.select("body").first();
                get_value = element.text();
                // marked for your use

                textview.setText(get_value);

                Log.e(Tag, get_value);
            } catch (Exception e) {
                // TODO Auto-generated catch block
                Log.e(Tag, e.toString());
            }
          }
        }).start();

   // textview.setText(get_value);

}
}