使用Python查找Wikipedia页面的主要图片

问题描述 投票:0回答:1

这是我使用的代码:

import wikipedia as wiki

page = wiki.page("Isaac Newton")
url = page.images[0]

它不会返回位于页面顶部的主要图片,而是返回其中一个(在这种情况下为this one)。我该如何解决?

python python-3.x wikipedia-api
1个回答
0
投票

尝试使用requestsjson

import requests
import json

def get_wiki_main_image(title):
    url = 'https://en.wikipedia.org/w/api.php'
    data = {
        'action' :'query',
        'format' : 'json',
        'formatversion' : 2,
        'prop' : 'pageimages|pageterms',
        'piprop' : 'original',
        'titles' : title
    }
    response = requests.get(url, data)
    json_data = json.loads(response.text)
    return json_data['query']['pages'][0]['original']['source'] if len(json_data['query']['pages']) >0 else 'Not found'
get_wiki_main_image('Isaac Newton')

希望您需要此输出

https://upload.wikimedia.org/wikipedia/commons/3/39/GodfreyKneller-IsaacNewton-1689.jpg

© www.soinside.com 2019 - 2024. All rights reserved.