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