【问题标题】:Save every scraped element in a loop to a json file将循环中的每个抓取的元素保存到 json 文件
【发布时间】:2018-09-19 16:28:17
【问题描述】:

我正在抓取一个网站。当我抓取一个 URL 时,我将其写入字典。我想要做的是将每个字典写入一个 json 文件。当我执行以下循环时,文件不是保存为列表,而是保存为不可读的结构 {} {}。

df_price_m = {}    
with open(r"C:\Users\USER\Desktop\diploma\information.json", 'w', encoding='utf8') as fout:
        row = 0
        for url in data:
            row +=1
            driver.get(url)
            user_name_xpath = "//h1[@itemprop='name' and @data-shmid='profilePrepName']"
            user_name = get_elements(user_name_xpath)    
            user_about_xpath = "//*[@class='desktop-profile-page__about-text']" 
            user_about = get_elements(user_about_xpath)
            df_info['id'] = url
            df_info['user_name'] = user_name[0]
            df_info['user_about'] = user_about[0]
            json.dump(df_price_m, fout, ensure_ascii=False)

我得到以下 json:

{"id": "www.aina.com", user_name: "Aina Nurma", "user_about": "I am a student"}
{"id": "www.aina.ru", user_name: "Aina Nur", "user_about": "I am a teacher"}

  

【问题讨论】:

    标签: python json loops web-scraping


    【解决方案1】:

    看起来您缺少一些代码,但我建议将所有数据保存为字典列表,然后在最后转储而不是转储到仅处理一个 url 的文件中

    【讨论】:

    • 请将此作为评论。
    猜你喜欢
    • 2019-01-24
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    • 2018-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-09
    相关资源
    最近更新 更多