有没有 API 从 wiki 页面获取图像
is there any API to get image from wiki page
我想从维基百科页面获取主要图像,我拥有创建 wiki 所用的所有维基百科实体名称 link 并从该页面获取主要图像。
我试过
https://github.com/richardasaurus/wiki-api, https://github.com/goldsmith/Wikipedia
但这并不适用于所有页面,尽管页面包含图像。
from wikiapi import WikiApi
wiki = WikiApi()
wiki = WikiApi({ 'locale' : 'es'})
def getWikiImage(entity):
results = wiki.find(entity)
print results
if len(results):
article = wiki.get_article(results[0])
print article.image
#getWikiImage("Rudy Sarzo")
getWikiImage("Melody Gersbach")
mediawiki api 在 http://www.mediawiki.org/wiki/API:Client_code#Python 我检查过,但似乎没有帮助。
这里是如何获取维基页面的小例子,主图像应该是页面上的第一个图像。
import wikipedia
PAGES = ['New York', 'Mercury_(planet)', 'Tucana']
for page in PAGES:
wikipage = wikipedia.page(page)
print "Page Title: %s" % wikipage.title
print "Page URL: %s" % wikipage.url
print "Nr. of images on page: %d" % len(wikipage.images)
print " - Main Image: %s" % wikipage.images[0]
print ""
这篇returns文章主图的url,不是随机的:
import wikipedia
import requests
import json
WIKI_REQUEST = 'http://en.wikipedia.org/w/api.php?action=query&prop=pageimages&format=json&piprop=original&titles='
def get_wiki_image(search_term):
try:
result = wikipedia.search(search_term, results = 1)
wikipedia.set_lang('en')
wkpage = wikipedia.WikipediaPage(title = result[0])
title = wkpage.title
response = requests.get(WIKI_REQUEST+title)
json_data = json.loads(response.text)
img_link = list(json_data['query']['pages'].values())[0]['original']['source']
return img_link
except:
return 0
wiki_image = get_wiki_image('Paris City')
我想从维基百科页面获取主要图像,我拥有创建 wiki 所用的所有维基百科实体名称 link 并从该页面获取主要图像。
我试过
https://github.com/richardasaurus/wiki-api, https://github.com/goldsmith/Wikipedia
但这并不适用于所有页面,尽管页面包含图像。
from wikiapi import WikiApi
wiki = WikiApi()
wiki = WikiApi({ 'locale' : 'es'})
def getWikiImage(entity):
results = wiki.find(entity)
print results
if len(results):
article = wiki.get_article(results[0])
print article.image
#getWikiImage("Rudy Sarzo")
getWikiImage("Melody Gersbach")
mediawiki api 在 http://www.mediawiki.org/wiki/API:Client_code#Python 我检查过,但似乎没有帮助。
这里是如何获取维基页面的小例子,主图像应该是页面上的第一个图像。
import wikipedia
PAGES = ['New York', 'Mercury_(planet)', 'Tucana']
for page in PAGES:
wikipage = wikipedia.page(page)
print "Page Title: %s" % wikipage.title
print "Page URL: %s" % wikipage.url
print "Nr. of images on page: %d" % len(wikipage.images)
print " - Main Image: %s" % wikipage.images[0]
print ""
这篇returns文章主图的url,不是随机的:
import wikipedia
import requests
import json
WIKI_REQUEST = 'http://en.wikipedia.org/w/api.php?action=query&prop=pageimages&format=json&piprop=original&titles='
def get_wiki_image(search_term):
try:
result = wikipedia.search(search_term, results = 1)
wikipedia.set_lang('en')
wkpage = wikipedia.WikipediaPage(title = result[0])
title = wkpage.title
response = requests.get(WIKI_REQUEST+title)
json_data = json.loads(response.text)
img_link = list(json_data['query']['pages'].values())[0]['original']['source']
return img_link
except:
return 0
wiki_image = get_wiki_image('Paris City')