3
A
回答
4
建议:打开URL作为流,然后在其描述元标记中HTML解析字符串。
抓取URL内容:
URL url = new URL("http://www.url-to-be-parsed.com/page.html");
BufferedReader in = new BufferedReader(
new InputStreamReader(
url.openStream()));
是否需要取决于你的HTML解析器库需要(流,字符串等)上面的代码来调整。
HTML的解析标签:
<meta name="description" content="This is a place where webmasters can put a description about this web page" />
您可能也有兴趣抓住该页面的标题:
<title>This is the title of the page!</title>
注意:正则表达式似乎不工作可靠的HTML文件,所以HTML-parser更好。
与HTML解析器例如:
- 使用
HasAttributeFilter
由具有name="description"
属性 - 标记过滤尝试
Node
--->MetaTag
铸造 - 获取
content
使用MetaTag.getAttribute()
邮编:
import org.htmlparser.Node;
import org.htmlparser.Parser;
import org.htmlparser.util.NodeList;
import org.htmlparser.util.ParserException;
import org.htmlparser.filters.HasAttributeFilter;
import org.htmlparser.tags.MetaTag;
public class HTMLParserTest {
public static void main(String... args) {
Parser parser = new Parser();
//<meta name="description" content="Some texte about the site." />
HasAttributeFilter filter = new HasAttributeFilter("name", "description");
try {
parser.setResource("http://www.youtube.com");
NodeList list = parser.parse(filter);
Node node = list.elementAt(0);
if (node instanceof MetaTag) {
MetaTag meta = (MetaTag) node;
String description = meta.getAttribute("content");
System.out.println(description);
// Prints: "YouTube is a place to discover, watch, upload and share videos."
}
} catch (ParserException e) {
e.printStackTrace();
}
}
}
注意事项:
如果这是在每个JSP页面加载时间做,你可能会放缓,由于网络I/O的URL。更糟糕的是,如果您每次都是在网页上执行此操作,以获得其中包含多个网址链接的页面,则由于n个网址的顺序操作,放缓速度可能很大。也许您可以将这些信息存储在数据库中,并根据需要进行刷新,而不是在JSP中即时进行。
相关问题
- 1. 如何访问当前[网页]页面(当前页面之外)?
- 2. 如何访问网页内容
- 3. PHP获取网页内容
- 4. 获取网页内容
- 5. 如何获取网页内容(android)?
- 6. 如何获取网页的txt内容?
- 7. 如何获取HTTPS网页的内容?
- 8. 如何读取网页的内容,而不是该网页的源代码?
- 9. 如何获取登录页面后面的网页内容?
- 10. 获取重定向到另一个网页的网页内容
- 11. 使用Php获取网页内容
- 12. 使用LWP获取网页内容
- 13. PHP,获取网页内容文字
- 14. 阅读网页内容,获取异常
- 15. 从silverlight获取网页内容?
- 16. Javascript获取网页内容到阵列
- 17. 获取网页的内容,并比较
- 18. 用于获取网页内容的Javascript?
- 19. node-simplecrawler:ajaxed内容网页抓取问题
- 20. 提取网页内容
- 21. PHP读取网页内容
- 22. 通过ajax调用访问当前网页的内容
- 23. ASP.NET MVC,如何让网页内容之前呈现
- 24. 访问JSP页面内的网页
- 25. 如何使用网页框在网页中获取Flash网址?
- 26. 如何获取列表的内容在网页
- 27. 如何在Java中获取网页的全部内容?
- 28. 如何在登录后使用HtmlAgilityPack获取网页内容?
- 29. 如何在Android中获取网页内容?
- 30. 获取当前网页的网址
::非常感谢您的答复。我想提取元标记的内容信息。我使用的是html解析器(http://htmlparser.sourceforge.net/samples.html)。 可以请你帮我.. – smartcode 2010-06-30 15:29:02
你走了。花了我一段时间让我的方式绕过他们的API。似乎正常工作。因为我也会使用它,所以如果我找到更有效的方法,我会更新。 – bakkal 2010-06-30 17:13:20
::多好的答案兄弟!非常感谢..祝你有美好的一天! – smartcode 2010-06-30 17:47:48