【问题标题】:How to take hyperlinks from a wikipedia page如何从维基百科页面获取超链接
【发布时间】:2020-12-17 00:07:13
【问题描述】:

我当前的项目需要获取一些维基百科页面的摘要。这真的很容易做到,但我想为此制作一个通用脚本。更具体地说,我还想获得超链接的摘要。例如我想得到这个页面的摘要:https://en.wikipedia.org/wiki/Creative_industries(这很容易)。此外,我还想获得以下部分中超链接的摘要:定义->“广告”、“营销”、“建筑”、...、“视觉艺术”。我的问题是其中一些超链接具有不同的页面名称。例如,前面提到的页面有超链接“软件”(编号 6),但我想要页面的摘要,即“软件工程”。 有人可以帮我吗?我可以找到具有相同超链接名称的页面摘要,但并非总是如此。所以基本上我正在寻找一种仅在页面的一个区域使用(page.links)的方法。 提前谢谢你

【问题讨论】:

  • 他们没有 API,所以您不需要使用网络抓取吗?
  • 请从intro tour 重复on topichow to ask。 “告诉我如何解决这个编码问题”不是堆栈溢出问题。我们希望您做出诚实的尝试,然后然后就您的算法或技术提出一个具体的问题。 Stack Overflow 并不打算取代现有的文档和教程。您需要研究如何从网页中抓取信息,包括挑选标签。

标签: python hyperlink wikipedia wiki


【解决方案1】:

尝试使用 Beautiful soup,这将打印所有带有给定前缀的链接

from bs4 import BeautifulSoup
import requests, re
''' Dont forget to install/setup package = 'lxml' '''



url = "your link"

response = requests.get(url)

data = response.text

soup = BeautifulSoup(data,'lxml')

tags = soup.find_all('a')

''' This will print every available link'''

for tag in tags:                       
    print(tag.get('href'))

''' this will print links with only prefix as given'''
for link in soup.find_all('a',attrs={'href': re.compile("^{{you prefix here}}")}):
    print(link.get('href')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-20
    • 2019-09-15
    相关资源
    最近更新 更多