0
假設我想抓住this wikipedia page中的第一段。如何使用XPath或DOM & PHP或類似的東西獲取標題和內容框之間的主體文本?如何從維基百科頁面刮取第一段?
是否有任何PHP庫?我不想使用API,因爲它有點複雜。
注意:我只是需要在顯示維基百科相關信息的頁面下添加一個窗口小部件。
假設我想抓住this wikipedia page中的第一段。如何使用XPath或DOM & PHP或類似的東西獲取標題和內容框之間的主體文本?如何從維基百科頁面刮取第一段?
是否有任何PHP庫?我不想使用API,因爲它有點複雜。
注意:我只是需要在顯示維基百科相關信息的頁面下添加一個窗口小部件。
使用下XPath表達式:
/*/h:body//h:h1
|
/*/h:body//h:h1/following::node()
[count(. | //h:table[@id='toc']
/preceding::node()
)
=
count(//h:table[@id='toc']
/preceding::node()
)
]
這裏前綴h:
綁定到XHTML命名空間()。
這種轉變表明通緝的結果真的產生:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:h="http://www.w3.org/1999/xhtml"
>
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/">
<xsl:copy-of select=
"/*/h:body//h:h1
|
/*/h:body//h:h1/following::node()
[count(. | //h:table[@id='toc']
/preceding::node()
)
=
count(//h:table[@id='toc']
/preceding::node()
)
]
"/>
</xsl:template>
</xsl:stylesheet>
當在維基百科文章的XHTML文檔運行(你還需要定義兩個實體
和®
本文檔),產生想要的結果。
你可能想看看維基媒體API – 2010-05-10 02:03:41