[英]Parsing Html content using Jsoup
這是我的HTML來源
<li>
<a href="/info/some1>Item 1<br>
<span class="deets">111</span>
</a>
</li>
<li>
<a href="/info/some2>Item 2<br>
<span class="deets">222</span>
</a>
</li>
<li>
<a href="/info/some3>Item 3<br>
<span class="deets">333</span>
</a>
</li>
這是我獲取內容的Java程序,它過濾HTML標記
try {
myurl = new URL("http://www.somewebsite.com");
HttpURLConnection con= (HttpURLConnection) myurl.openConnection();
InputStream result = con.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(result));
StringBuilder sb = new StringBuilder();
for(String line; (line = reader.readLine()) != null;)
//append all content & separate using line separator
sb.append(line).append(System.getProperty("line.separator"));
String final_result = sb.toString().replaceAll("\\<.*?\\>", "");
TextView tv=(TextView) findViewById(R.id.textView1);
tv.setText(final_result);
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
tv.setText("not working");
}
是否有使用Jsoup而不是使用Java而不是Regex解析HTML內容的簡便方法
有沒有辦法只獲取所需的內容。 所以在這里我只需要內容“項目2-222”
<li> <a href="/info/some2>Item 2<br> <span class="deets">222</span> </a> </li>
嘗試以下操作,以使用jsoup輕松解析:
// To parse the html page
Document doc = Jsoup.connect("http://www.website.com").get();
Document doc1 = Jsoup.parse("<html><head><title>First parse</title></head>" + "<body> <p>Parsed HTML into a doc.</p></body></html>");
String content = doc.body().text();
// To get specific elements such as links
Element links = doc.select("a[href]");
for(Element e: links){
System.out.println("link: " + e.attr("abs:href"));
}
要了解更多信息,請訪問Jsoup Docs
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.