当前位置: 首页 > 面试题库 >

解析维基百科转储

姜乐家
2023-03-14
问题内容

例如,使用此Wikipedia转储:

http://en.wikipedia.org/w/api.php?action=query&prop=revisions&titles=lebron%20james&rvprop=content&redirects=true&format=xmlfm

我是否可以使用现有的Python库来创建带有主题和值映射的数组?

例如:

{height_ft,6},{nationality, American}

问题答案:

看来您确实希望能够解析MediaWiki标记。有一个为此目的设计的python库称为mwlib。您可以使用python的内置XML包从API的响应中提取页面内容,然后将该内容传递到mwlib的解析器中以生成对象表示形式,您可以在代码中浏览和分析该对象表示形式以提取所需的信息。mwlib已获得BSD许可。



 类似资料:
  • 维基百科离线阅读器,支持索引官方dump!

  • 问题内容: 我需要获取任何电影的信息框的内容。我知道电影的名字。一种方法是获取Wikipedia页面的完整内容,然后解析它,直到找到并获取信息框的内容。 使用某些API或解析器,是否还有其他方法可以实现? 我正在使用Python和pywikipediabot API。 我也熟悉wikitools API。因此,如果有人具有与wikitools API相关的解决方案,请不要使用pywikipedia

  • 我正在尝试从这个维基百科页面中获取表数据:https://en.wikipedia.org/wiki/2020_coronavirus_pandemic_in_Nepal我试过用熊猫警犬。Read Office HTML语法,但它对我试图擦除的表无效(证实了CavID-19在尼泊尔地区的病例)。 我试着用Beautifulsoup和pandas来搜集数据,但没有用

  • 有办法从维基百科获得所有标题/摘录对吗?到那一刻,我发现了两种方法: 下载摘录转储,但它包含不完整/无效的摘录,我想是作为文章的第一行。 使用MediaWiki API请求摘录,但它非常慢,因为每个请求只能获得单个摘录(批量查询不适用于摘录): /w/api.php?action=query 我想获得摘录,因为它们是由MediaWiki API生成的,而不需要负担维基百科服务器。可能吗? 顺便说一

  • 在本章中,我展示了上一个练习的解决方案,并分析了 Web 索引算法的性能。然后我们构建一个简单的 Web 爬虫。 15.1 基于 Redis 的索引器 在我的解决方案中,我们在 Redis 中存储两种结构: 对于每个检索词,我们有一个URLSet,它是一个 Redis 集合,包含检索词的 URL。 对于每个网址,我们有一个TermCounter,这是一个 Redis 哈希表,将每个检索词映射到它出

  • 我对德语维基百科API的查询中的空格有问题。在英文版中,一切工作正常,查询被正确地规范化和重定向。我试过“卡尔·马克思”作为例子。 https://en.wikipedia.org/w/api.php?action=query 但是,德语版本不会重定向,尽管标准化会给出相同的结果: https://de.wikipedia.org/w/api.php?action=query 有人知道该怎么办吗?