簡體   English   中英

在數組內生成動態嵌套 JSON 對象 - python

[英]Generating a dynamic nested JSON objects inside an array - python

我有一個腳本,通過它我可以從多個頁面抓取數據。 我正在嘗試在數組內生成動態嵌套的 JSON 對象。 我得到的結果是有嵌套的 JSON 個對象,但在兩個列表中 output 數據像這樣開始['[{ and ends }]"']像這樣。 我需要有人可以向我解釋我在哪里犯了錯誤?

**** 我在下面粘貼我的代碼,請看一下 ****

我粘貼在我的代碼下面。

def geturl():
    urls = [
    
        # list of URLs
    ]
    
    with open('temp.json', 'w', encoding='utf-8') as file:
        for url in urls:
            r = requests.get(url)
            print(r.status_code)
            data = json.loads(r.content)
            items = data['items']
            baseurl =  # URL
            data = OrderedDict()
            main = []
            for item in items:
                data['Title'] = item['name']
                data["Price"] = item['price']
                data['Detai Page'] = baseurl + item['slug']
                data['Image'] = item['thumb_image']
    
                main.append(data)
                result = json.dumps(main)
        json.dump(result, file, indent=4, sort_keys=True)

geturl()

有人,請幫我解決這個問題?

這應該工作文件

import pandas as pd
def geturl(filehandler):
  urls =[ # your urls here ] 

  main = []  
  baseurl = # your base url

  for url in urls:
  
    r = requests.get(url)
    data = json.loads(r.content)
    items = data['items']     
    
    for item in items:
      data = {}
      data['Title'] = item['name']
      data["Price"] = item['price']
      data['Detai Page'] = baseurl+item['slug']
      data['Image'] = item['thumb_image']
      main.append(data)
    
  # writing to json file
  json.dump(main, filehandler)

  # reading with pandas
  df= pd.DataFrame(main)
  df.to_json('data.json', orient='records')

  

with open('temp.json', 'w', encoding='utf-8') as filehandler:
  geturl(filehandler)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM