1

有没有一种智能的方法可以从 android 中的 URL 读取元标记的内容?我将在 android 的 webview 中显示一个网页,并想从里面的 metatag 中读取一些信息。是解析网页字符串找到特殊字符串“meta name="x-..." content="!!!”的唯一方法还是有更聪明的方法?

4

1 回答 1

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”的值

于 2013-12-31T00:36:29.567 回答