2011-07-05 116 views
0

我想使用實際的API獲取維基百科文章的內容。現在,我完全熟悉action=renderaction=raw,但我希望最純正的版本成爲可能,用純文本。沒有格式化,沒有鏈接,最好沒有模板,沒有引用,也沒有TOC。舉個例子,下面是SO頁面的摘錄:獲取維基百科文章的內容

<p><b>Stack Overflow</b> is a <a href="http://en.wikipedia.org/wiki/Website" title="Website">website</a>, part of the <a href="http://en.wikipedia.org/wiki/Stack_Exchange_Network" title="Stack Exchange Network">Stack Exchange Network</a>,<sup id="cite_ref-blog_legal_1-0" class="reference"><a href="#cite_note-blog_legal-1"><span>[</span>2<span>]</span></a></sup><sup id="cite_ref-stackapps_legal_2-0" class="reference"><a href="#cite_note-stackapps_legal-2"><span>[</span>3<span>]</span></a></sup> featuring questions and answers on a wide range of topics in <a href="http://en.wikipedia.org/wiki/Computer_programming" title="Computer programming">computer programming</a>.<sup id="cite_ref-secrets_3-0" class="reference"><a href="#cite_note-secrets-3"><span>[</span>4<span>]</span></a></sup><sup id="cite_ref-slashdot_4-0" class="reference"><a href="#cite_note-slashdot-4"><span>[</span>5<span>]</span></a></sup><sup id="cite_ref-google-tech-talks_5-0" class="reference"><a href="#cite_note-google-tech-talks-5"><span>[</span>6<span>]</span></a></sup></p> 

這是所有的模板和東西甚至。我想徹底刪除這些內容,並找到真正的文章開始的位置。然後,我需要進一步剃下來的東西,如:

Stack Overflow是一個網站, 堆棧交換網絡的一部分,具有在計算機編程主題的廣泛 問題和答案。

如何切斷模板和wiki格式以自行獲取原始文章內容?這是用PHP實現的。

+0

可能它寫在文檔中:http://en.wikipedia.org/w/api.php – hakre

+0

@hakre似乎不喜歡它,除非我錯過了它? – Cyclone

回答

1

wikipediamediawiki api擁有您正在尋找的一切。對於SO例子,這裏是SO wiki api page

我不認爲你可以通過API直接獲取純文本。您需要從這些set of parsers中選擇您需要的內容。

希望這會有所幫助!

+0

沒有一個看起來真的在做我正在尋找的東西:/ – Cyclone

+0

好吧,你並不總是得到一個切割,並嘗試現成的解決方案。你需要從那裏開始工作和工作。 – Sukumar

+0

但是沒有一個比API本身做得更好,這與我的目標相去甚遠。 – Cyclone