来自 JSON 的真实数据元素

Real data elements from JSON

我正在尝试使用 python.Below 从 json url link 中提取数据元素是代码。当我尝试提取元素时它正在部分工作

 response = urllib.request.urlopen(url)
    data = json.loads(response.read())
    print("planId",data[0]["planId"]) #Gives result as planId PWR93173MBE1
    print("postcode",data[0]["postcode"]) # Gives result as postcode 2000
    print("tariffType", data[0]["tariffType"]) This gives me error.

还有,如果我想提取其他元素,比如PlanType等Fees中的其他字段,怎么办?

   [
       {
          "planData":{
             "planType":"M",
             "tariffType":"SR",
             "contract":[
                {
                   "pricingModel":"SR",
                   "benefitPeriod":"Ongoing",
                   "coolingOffDays":10,
                   "additionalFeeInformation":"This offer provides access to wholesale prices, utilises your Powerbank to smooth wholesale market volatility and Powerwatch to warn of higher prices. For more information on this and any other standard fees, visit our website www.powerclub.com.au",
                   "fee":[
                      {
                         "description":"Annual Membership payable each year for each of your business premises taking supply.",
                         "amount":79,
                         "feeType":"MBSF",
                         "percent":0,
                         "feeTerm":"A"
                      },
                      {
                         "description":"Cost for providing a paper bill",
                         "amount":2.5,
                         "feeType":"PBF",
                         "percent":0,
                         "feeTerm":"F"
                      },
                      {
                         "description":"Disconnection fee",
                         "amount":59.08,
                         "feeType":"DiscoF",
                         "percent":0,
                         "feeTerm":"F"
                      },
                      {
                         "description":"Reconnection Fee",
                         "amount":59.08,
                         "feeType":"RecoF",
                         "percent":0,
                         "feeTerm":"F"
                      },
                      {
                         "description":"Meter  Read - Requested by  Customer",
                         "amount":12.55,
                         "feeType":"OF",
                         "percent":0,
                         "feeTerm":"F"
                      }
                   ],
          "planId":"PWR93173MBE1",
          "planType":"E#B#PWR93173MBE1",
          "postcode":2000
       }
    ]

tariffType 属性 位于 planData 属性 内,因此您需要执行类似

的操作
print("tariffType", data[0]["planData"]["tariffType"])

你忘记嵌套了,正确的应该是:

print("tariffType", data[0]["planData"]["tariffType"])