我试图编程一个补货显示器。要做到这一点,我想转换的shopify商店的.json文件,但对于可用的部分,我总是得到一个错误:(
import bs4 as bs
import urllib.request
import discord
from discord.ext import commands
from dhooks import Webhook
import requests
import json
r = requests.get("https://www.antisocialsocialclub.com/products.json")
products = json.loads((r.text))["products"]
for product in products:
print(product["title"])
print(product["tags"])
print(product["published_at"])
print(product["created_at"])
print(product["product_type"])
print(product["available"])
我得到的错误是。
Traceback (most recent call last):
File "/Users/valentinwestermann/Documents/La dieta mediterranea_dhooks.py", line 20, in <module>
print(product["available"])
KeyError: 'available'
JSON结构和你想象的不太一样。available
key是以列表形式从 variant
键。因此,要想找到可用性,你必须对每个变量进行处理。
import requests
import json
r = requests.get("https://www.antisocialsocialclub.com/products.json")
products = json.loads((r.text))["products"]
for product in products:
print(product["id"])
print(product["title"])
print(product["tags"])
print(product["published_at"])
print(product["created_at"])
print(product["product_type"])
for variant in product["variants"]:
print(variant['available'])
这里是第一个产品输出。
4508425453643
Broken Ankle White Socks
['SS20']
2020-03-27T20:29:52-07:00
2020-03-27T20:29:52-07:00
False