1

ウィキペディアには、記事ではないページがたくさんあります。たとえば、トーク ページなどです。それらを記事と URL で区別するにはどうすればよいですか?

4

2 に答える 2

2

短い答えは、正規表現だけではできないということです。

より長い答えは、MediaWiki の記事は名前空間によって分割され、"Talk:Foo" のようにコロンをマーカーとして使用するというものです。したがって、タイトルにコロンのない記事は、間違いなくメイン (= コンテンツ) 名前空間にあります。問題は、コロンを含む記事が別の名前空間にある、たまたまコロンを含むコンテンツ記事である可能性があることです.WPの名前空間のリストは長く、絶え間なく変化するため、ハードコードすることはできません(または少なくともすべきではありません)正規表現のこのリスト。

したがって、正しい答えは、MediaWiki APIを使用してメインの名前空間のみで記事を反復/検索することです。

于 2013-04-22T22:21:14.313 に答える
1

次のクエリで API を使用して、ウィキペディアの名前空間とそのエイリアスのリストを取得できます。

http://en.wikipedia.org/w/api.php?action=query&meta=siteinfo&siprop=namespaces

次に、最初のコロンの前のページ タイトルの部分が既知の名前空間のいずれかに一致する場合、それは記事ではありません。そうでなければ、そうです。

于 2013-04-22T22:48:08.300 に答える