Список = путаница всех ссылок
Я делаю исследовательский проект на лето, и мне нужно получить некоторые данные из Википедии, сохранить их, а затем провести анализ. Я использую Википедию API для сбора данных, и у меня это хорошо получается.
Каковы мои вопросы в отношении links-alllinks
Опция в документе API здесь. После прочтения описания, как там, так и в самом API (он не работает, и я не могу напрямую связать его с разделом), я думаю, что понимаю, что он должен возвращать. Однако когда я запустил запрос, он вернул мне то, чего я не ожидал.
Вот запрос, который я выполнил:
http://en.wikipedia.org/w/api.php?action=query&prop=revisions&titles=google&rvprop=ids|timestamp|user|comment|content&rvlimit=1&list=alllinks&alunique&allimit=40&format=xml
Что по сути говорит: получите последнюю ревизию страницы Google, включите идентификатор, метку времени, пользователя, комментарий и содержание каждой ревизии и верните ее в формате XML. Allinks (я думал) должен вернуть мне список страниц википедии, которые указывают на страницу Google (в данном случае первые 40 уникальных).
Я не уверен, что политика на ругательствах, но это результат, который я получил точно:
<?xml version="1.0"?>
<api>
<query><normalized>
<n from="google" to="Google" />
</normalized>
<pages>
<page pageid="1092923" ns="0" title="Google">
<revisions>
<rev revid="366826294" parentid="366673948" user="Citation bot" timestamp="2010-06-08T17:18:31Z" comment="Citations: [161]Tweaked: url. [[User:Mono|Mono]]" xml:space="preserve">
<!-- The page content, I've replaced this cos its not of interest -->
</rev>
</revisions>
</page>
</pages>
<alllinks>
<!-- offensive content removed -->
</alllinks>
</query>
<query-continue>
<revisions rvstartid="366673948" />
<alllinks alfrom="!2009" />
</query-continue>
</api>
<alllinks>
отчасти, это просто куча случайных трюков и оскорбительных комментариев. Не почти то, что я думал, что получу. Я провел немало поисков, но не могу найти прямого ответа на свой вопрос.
- Что следует
list=alllinks
вариант возврата? - Почему я получаю это дерьмо там?
1 ответ
Вы не хотите список; список - это то, что перебирает все страницы. В вашем случае вы просто "перечисляете все ссылки, которые указывают на данное пространство имен".
Вам нужно свойство, связанное со страницей Google, поэтому вам нужно использовать prop=links вместо хрена all links.
Таким образом, ваш запрос становится: http://en.wikipedia.org/w/api.php?action=query&prop=revisions|links&titles=google&rvprop=ids|timestamp|user|comment|content&rvlimit=1&format=xml