我正在尝试从一个只有正文的 HTML 页面进行解析,并且正文中是一个 pre 标签,但仅此而已。我需要从中获取信息并将其放入使用 phonegap 的我的 android 应用程序中。我非常了解javascript。我听说 Jsoup 会很好用,但我不确定如何将使用 Jsoup 提取的数据输出为我可以显示的文本。
提前感谢您的帮助!
你可以这样试试。
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();
注意:我没有运行此代码。但你应该试试这个。
如何使用它:
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);
}
}