从Wikipedia上的页面获取所有链接

伊恩·德比安(Ian Debian)

我正在编写一个Python网络爬虫程序来玩Wiki游戏

如果您不熟悉此游戏:

  1. 从维基百科上的一些文章开始
  2. 选择目标文章
  3. 只需单击Wiki /链接,即可尝试从开始文章中获取目标文章。

我这样做的过程是:

  1. 将开始文章和目标文章作为输入
  2. 获取链接到目标文章的文章列表
  3. 在找到的链接上进行广度优先搜索,避免从开始的文章开始访问已被访问的页面
  4. 检查目标文章是否在当前页面上:如果是,则返回 path_crawler_took+goal_article
  5. 检查是否有链接到目标的文章在当前页面上。如果其中之一是,返回path_crawler_took+intermediate_article+goal

我在程序返回路径时遇到问题,但是该路径实际上并没有链接到目标。

def get_all_links(source):
    source = source[:source.find('Edit section: References')]
    source = source[:source.find('id="See_also"')]
    links=findall('\/wiki\/[^\(?:/|"|\#)]+',source)
    return list(set(['http://en.wikipedia.org'+link for link in links if is_good(link) and link]))

links_to_goal = get_all_links(goal)

我意识到我是通过将所有链接从目标页面上抓取来获得指向目标的链接的,但是Wiki /链接是单向的:仅仅因为目标链接到页面并不意味着页面链接到目标。

如何获得链接到目标的文章列表?

大卫·格雷丹努斯(David Greydanus)

Wikipedia有一个内置工具,可以执行您所描述的WhatLinksHere / Backlink

您可以在每个Wikipedia页面上看到此工具。 例子

您可以简单地将所有链接从目标页面的反向链接页面上刮掉。

'http://en.wikipedia.org/w/index.php?title=Special%3AWhatLinksHere&limit='500'&target='+goal+'&namespace=0'
                                                                                          ^^^^
                                                                                          Article you are trying to reach here

WhatLinksHere的维基帮助页面

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从Wikipedia页面下载所有链接的文件

来自分类Dev

如何从带有标题和主图像的类别中获取所有Wikipedia页面?

来自分类Dev

使用ruby capybara获取页面的所有href链接

来自分类Dev

Python从谷歌搜索结果页面获取所有链接

来自分类Dev

从Wikipedia信息框中获取DBPedia中页面/资源的所有属性的JSON /字典

来自分类Dev

获取所有重定向到Wikipedia页面的URL的列表?

来自分类Dev

jQuery:从HTML页面获取所有链接,除非链接属于特定的类或ID

来自分类Dev

访问所有页面图像的完整URL Wikipedia API

来自分类Dev

如何搜索包含所有单词的Wikipedia页面

来自分类Dev

如何迭代 BeautifulSoup 以从站点上的所有表单中获取所有操作(链接)?

来自分类Dev

从API获取所有页面

来自分类Dev

从页面缓存中获取所有页面

来自分类Dev

如何通过类名获取页面中的所有链接并存储

来自分类Dev

我该如何使用Powershell获取网站的网址并查看此页面的所有链接(抓取)

来自分类Dev

如何获取维基百科页面的所有链接及其Wikidata ID?

来自分类Dev

如何使用Python中的请求从Reddit页面的帖子中获取所有图像链接

来自分类Dev

如何通过类名获取页面中的所有链接并存储

来自分类Dev

php:如何从给定页面的特定div获取所有超链接?

来自分类Dev

使用PHP从Curl或任何库中获取网站页面请求的所有链接

来自分类Dev

Python + 网页抓取 + scrapy:如何从 IMDb 页面获取所有电影的链接?

来自分类Dev

Scrapy XPath页面上的所有链接

来自分类Dev

抓取页面中的所有链接

来自分类Dev

如何更改页面中的所有链接?

来自分类Dev

所有页面链接都无法点击?

来自分类Dev

如何获得所有链接的表单页面?

来自分类Dev

slideToggle打开页面上的所有链接?

来自分类Dev

单击按钮应将页面上的所有链接更改为CSS上的linkStyles类

来自分类Dev

如何获取所有Wikipedia文章的标题列表

来自分类Dev

python Wikipedia抓取-使用其他语言获取指向同一页面的链接?

Related 相关文章

  1. 1

    从Wikipedia页面下载所有链接的文件

  2. 2

    如何从带有标题和主图像的类别中获取所有Wikipedia页面?

  3. 3

    使用ruby capybara获取页面的所有href链接

  4. 4

    Python从谷歌搜索结果页面获取所有链接

  5. 5

    从Wikipedia信息框中获取DBPedia中页面/资源的所有属性的JSON /字典

  6. 6

    获取所有重定向到Wikipedia页面的URL的列表?

  7. 7

    jQuery:从HTML页面获取所有链接,除非链接属于特定的类或ID

  8. 8

    访问所有页面图像的完整URL Wikipedia API

  9. 9

    如何搜索包含所有单词的Wikipedia页面

  10. 10

    如何迭代 BeautifulSoup 以从站点上的所有表单中获取所有操作(链接)?

  11. 11

    从API获取所有页面

  12. 12

    从页面缓存中获取所有页面

  13. 13

    如何通过类名获取页面中的所有链接并存储

  14. 14

    我该如何使用Powershell获取网站的网址并查看此页面的所有链接(抓取)

  15. 15

    如何获取维基百科页面的所有链接及其Wikidata ID?

  16. 16

    如何使用Python中的请求从Reddit页面的帖子中获取所有图像链接

  17. 17

    如何通过类名获取页面中的所有链接并存储

  18. 18

    php:如何从给定页面的特定div获取所有超链接?

  19. 19

    使用PHP从Curl或任何库中获取网站页面请求的所有链接

  20. 20

    Python + 网页抓取 + scrapy:如何从 IMDb 页面获取所有电影的链接?

  21. 21

    Scrapy XPath页面上的所有链接

  22. 22

    抓取页面中的所有链接

  23. 23

    如何更改页面中的所有链接?

  24. 24

    所有页面链接都无法点击?

  25. 25

    如何获得所有链接的表单页面?

  26. 26

    slideToggle打开页面上的所有链接?

  27. 27

    单击按钮应将页面上的所有链接更改为CSS上的linkStyles类

  28. 28

    如何获取所有Wikipedia文章的标题列表

  29. 29

    python Wikipedia抓取-使用其他语言获取指向同一页面的链接?

热门标签

归档