请原谅我,如果直接用它,但是python让我疯狂的看起来很简单。
简而言之 我正在写一个音乐视频剪贴簿的扩展程序,它负责获取粉丝背景。 这是URL: github.com/MViDLibraryToolKit/.../APICaller
所以我能够调用Fanart.tv API并接收正确的json响应。我的问题是,我愚蠢地收集元素下的网址" artistbackground"
我搜索互联网并在stackoverflow发现了一个非常相似的帖子,但不幸的是这涉及到python2,API V2和fanart.tv上的一个不同的类别,所以我无法使用它。 Here it was
无论如何,这是我的穷人尝试收集列表的网址
# --------------------- Response Verarbeitung
# Ausgabe zwecks Debug
# print(fanartTVresp)
# http://webservice.fanart.tv/v3/music/albums/ba853904-ae25-4ebb-89d6-c44cfbd71bd2?api_key=fdadba00cfaaf3621eaa748669256a9e&client_key=dce01d75553d7e3fbc2ad742aaf5d371
# zu befüllende Liste
url_list = []
# lade Web-Response
json_response = json.loads(fanartTVresp)
# durch Element artistbackground loopen
for artistbackground in json_response:
url = urllib.parse.quote(['url'], ':/')
if url:
url_list.append(url)
print(url_list)
我加载的库...
import musicbrainzngs
import urllib
import json
import socket
from pprint import pprint
from urllib.parse import quote
您可以在我的github链接中找到的代码中的其余部分。请帮助我,它让我发疯了^^
亲切的问候
P.S。请原谅我的英语,我来自德国:)
答案 0 :(得分:0)
我想我终于明白了。
# URL List for background images
url_list = []
# set only for debug / value came from powershell runtime later
location = os.path.abspath('C:/temp')
# decode json
json_response = json.loads(fanartTVresp.decode())
# set string objects
bgitem = json_response["artistbackground"]
bgcoverurl = json_response["artistbackground"][0]["url"]
# iterating items and collect
for bgcoverurl in bgitem:
url_list.append(bgcoverurl)
print(url_list)
经过几个小时的睡眠后,我重新确定了这个" json.loads"反序列化对常规python对象的响应。如果我错了,请纠正我。 无论如何,它终于有效了!