有人可以帮助我使用xpath语法从HTML获取段落

时间:2013-08-15 04:30:59

标签: android html xpath

我正在学习软件开发和Android,现在我有一个项目,我必须从HTML获取数据并将其显示在我的应用程序中。

使用的html看起来或多或少是这样的:

< PR >This paragraph contains a < B >bold < /B > word< /PR >.

我需要将字符串提取为“此段落包含粗体字。”

我已尝试//p, /html/body/p, //p[@*]等等。

该段落也没有divid供我使用//div/p

我是新手,我已经在第二年完成了XPath,但只是短暂的。

一个工作示例是//div[@id:blog-stats-2]/ul/li/我必须获取当前视图 来自一个有用的博客网站。

我真的需要帮助。如果能让我的问题更清楚,我会告诉你我的代码。

提前致谢。

得到答案

HtmlCleaner cleaner = new HtmlCleaner();

            URL url = new URL(option_url);
            URLConnection conn = url.openConnection();
            TagNode node = cleaner.clean(new InputStreamReader(conn.getInputStream()));
            Object[] info_nodes = node.evaluateXPath("//P");

            if (info_nodes.length > 0) 
            {
                for (int x = 0; x < info_nodes.length; x++) 
                {
                    TagNode info_node = (TagNode) info_nodes[x];
                    String name = info_node.getText().toString();
                    Log.d("P NODES",name);
                }
            }

现在我要把它保存在一个阵列中!!!!!!!!

1 个答案:

答案 0 :(得分:0)

如果表达式EXP选择了您感兴趣的段落,那么string(EXP)将返回段落的字符串值,这就是您所追求的段落。

您还没有真正提供任何关于EXP可能是什么的线索,也就是说,您希望如何区分此段落与文档中的所有其他段落。