維基百科上有很多不是文章的頁面,例如談話頁面等。如何通過URL區分他們與文章?如何通過URL區分維基百科文章?
1
A
回答
1
您可以通過使用其API使用以下查詢獲取百科命名空間及其別名的列表:
http://en.wikipedia.org/w/api.php?action=query&meta=siteinfo&siprop=namespaces
然後,如果頁面標題的第一個冒號前的部分匹配任何的已知的命名空間,它不是一篇文章;否則,它是。
2
簡短的回答是,你不能只有正則表達式。
較長的答案是MediaWiki文章被命名空間分割,而命名空間反過來使用冒號作爲標記,如「Talk:Foo」中所示。文章沒有標題中的冒號因此肯定在主(=內容)名稱空間中。問題是,帶有冒號的文章可能在另一個命名空間或是content articles that happen to contain a colon,並且由於WP的命名空間列表很長並且不斷變化,所以您不能(或者至少不應該)在正則表達式中對此列表進行硬編碼。
因此,正確的答案是使用MediaWiki API來迭代/搜索主名稱空間中的文章。
相關問題
- 1. 如何通過API獲取維基百科文章長度?
- 2. 從維基百科獲取文章XML轉儲 - 通過標題
- 3. 如何用R分析維基百科文章的數據庫?
- 4. 獲得維基百科文章概要
- 5. 隱藏維基百科文章反饋
- 6. 總結維基百科文章
- 7. PHP +維基百科:從維基百科文章的第一段獲取內容?
- 8. 維基百科文章url重寫規則
- 9. 維基百科的文章頻率文章
- 10. 通過意向啓動維基百科
- 11. R - 維基百科文章的自動分類
- 12. 如何製作維基百科分支?
- 13. 如何從維基百科獲取文章修訂歷史
- 14. 如何獲得維基百科長篇文章的列表?
- 15. 如何將維基百科文章轉換爲RSS源項目
- 16. 如何獲取所有維基百科文章標題?
- 17. 如何在維基百科檢查頁面是否爲文章?
- 18. 如何抓取維基百科文章的解析信息框?
- 19. 如何獲取正確的維基百科文章
- 20. 如何獲取維基百科文章的默認圖片?
- 21. 如何使用維基百科API獲取維基百科文章信息框中的信息?
- 22. 通過模板分配維基百科分類
- 23. 區分維基百科對普通頁面的歧義
- 24. 什麼是用來當我讀到關於維基百科幾何/圖形文章,以創建維基百科
- 25. 如何提取維基百科上的文章質量分級方案
- 26. 維基百科API
- 27. 如何分解和分析特定維基百科文本
- 28. android:從維基百科文章顯示標題和文本
- 29. jsoup - 從維基百科文章中提取文本
- 30. 如何通過API提取維基百科頁面WikiTables?
你到目前爲止嘗試過什麼?談話頁面在標題前面有「Talk:」,在頁面標題和URL中都有。 – 2013-04-22 22:18:13
是的,但不僅有談話頁面。我試着只使用alpanumeric網址,但這顯然是不正確的。 – lizarisk 2013-04-22 22:20:29