簡體   English   中英

如何避免熊貓 to_json 轉義 url 中的灰燼

[英]How to avoid pandas to_json escaping forward ashes in urls

我正在嘗試將 JSON 文件數據加載到數據框中,過濾一些記錄,然后再次將其寫回文件。 我的文件每行包含一個 JSON 記錄,每個記錄中都有一個 URL。 這是輸入文件中的示例數據。

{"site_code":"111","site_url":"https://www.site111.com"}
{"site_code":"222","site_url":"https://www.site333.com"}
{"site_code":"333","site_url":"https://www.site333.com"}

我使用的示例代碼

import pandas as pd
sites = pd.read_json('sites.json', lines=True)
modified_sites = sites[sites['site_code']!=222]
modified_sites.to_json('modified_sites.json',orient='records',lines=True)

但是生成的文件包含轉義的正斜杠

{"site_code":111,"site_url":"https:\/\/www.site111.com"}
{"site_code":333,"site_url":"https:\/\/www.site333.com"}

如何避免它並在生成的文件中獲取以下數據?

{"site_code":111,"site_url":"https://www.site111.com"}
{"site_code":333,"site_url":"https://www.site333.com"}

注意:我提到了這些但對我的情況沒有幫助

  1. pandas to_json() 多余的反斜杠

您可以嘗試直接格式化轉義斜杠並將結果保存到文件:

import pandas as pd
import numpy as np

sites = pd.read_json('sites.json', lines=True)
modified_sites = sites[sites['site_code']!=222]
modified_sites.to_json('modified_sites.json',orient='records',lines=True)
formatted_json = modified_sites.to_json(orient='records',lines=True).replace('\\/', '/')
print(formatted_json, file=open('modified_sites.json', 'w'))

暫無
暫無

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

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