Как я могу получить название изображения с помощью API Википедии - PullRequest
2 голосов
/ 21 мая 2019

Предположим, что у меня есть URL изображений на странице,

 for i in wiki.images:
    print (i)

Есть ли простой способ получить заголовки изображений?

Ответы [ 2 ]

3 голосов
/ 21 мая 2019

try:

Если вы просматриваете все URL изображений, то вы можете попробовать

for i in wiki.images:
    i.split('/')[-1]  # -1 because the name is at the last part of the url

Так что приведенный выше код даст вам изображениеимя.

Надеюсь, это поможет ...

2 голосов
/ 21 мая 2019

Если вы пытаетесь получить атрибут title тега изображения (то есть из HTML), вы можете сделать что-то похожее на:

import wikipedia
from html.parser import HTMLParser

class WikipediaImageParser(HTMLParser):
    def handle_starttag(self, tag, attrs):
        if tag == 'img':
            try:
                print(dict(attrs)['title'])
            except KeyError as e:
                return # do nothing

page = wikipedia.page("History_of_Japan")
parser = WikipediaImageParser()
parser.feed(page.html())

Вы можете проанализировать HTML-код, чтобы определить параметры атрибутов для каждого изображения, а затем просто проверить, есть ли атрибут заголовка.

...