用python3解析fanartapi v3

2024-05-23 19:34:37 发布

您现在位置:Python中文网/ 问答频道 /正文

原谅我,如果你直截了当地说出来,但是python让我对一些看起来很简单的事情发疯。你知道吗

一言以蔽之 我正在为一个musicvideo刮削器写一个扩展,它负责获得fanart背景。 以下是网址: github.com/MViDLibraryToolKit/.../APICaller

所以我打电话给艺术电视台API并接收正确的json响应。我的问题是,在“artistbackground”元素下收集URL会让我哑口无言

我在网上搜索了一下,在stackoverflow发现了一个非常类似的帖子,但不幸的是,这是关于python2,API V2和另一个不同类别的艺术电视台所以我无法利用它。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链接中找到。请帮帮我,我快疯了^^

谨致问候

请原谅我的英语,我来自德国:)


Tags: importgithubapijsonurlresponseurllib艺术
1条回答
网友
1楼 · 发布于 2024-05-23 19:34:37

我想我终于明白了。你知道吗

# 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对象的响应。如果我错了就纠正我。 不管怎样,终于成功了!你知道吗

相关问题 更多 >