有没有一种智能方法从android中的URL读取元标记的内容?我将在android上的webview中显示一个网页,并希望从内部的元标记中读取一些信息。是解析网页字符串以找到特殊字符串“meta name =”x -...“content =”!!!“的唯一方法,还是有更聪明的方法?
答案 0 :(得分:1)
聪明的方法是使用Jericho Library
假设您有一个像这样的HTML文件
<html xmlns="http://www.w3.org/1999/xhtml" debug="true">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252"/>
<link href="styleUrgente.css" rel="stylesheet" type="text/css"/>
<meta name="viewport" content="width = 320, initial-scale = 1.0, user-scalable = no"/>
<meta name="joc-height" value="120"/>
<meta name="joc-enabled" value="1"/>
</head>
<body margin="0" marginheight="0" marginwidth="0" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">
<script src="chrome-extension://bmagokdooijbeehmkpknfglimnifench/googleChrome.js"/>
</html>
例如,要获取名为“joc-height
”的元标记的值,您可以使用此方法:
public String extractAllText(String htmlText){
Source source = new Source(htmlText);
String strData = "";
List<Element> elements = source.getAllElements("meta");
for(Element element : elements )
{
final String id = element.getAttributeValue("name"); // Get Attribute 'id'
if( id != null && id.equals("joc-height")){
strData = element.getAttributeValue("value").toString();
}
}
return strData;
}
您将获得“120
”