使用Python將JSON格式的假期數(shù)據(jù)轉(zhuǎn)換為Excel文件
要將給定的假期數(shù)據(jù)生成 Excel 文件,可以使用 Python 的 pandas 和 openpyxl 庫來處理。下面是一個示例代碼,展示如何將 JSON 數(shù)據(jù)轉(zhuǎn)換為 Excel 文件。
數(shù)據(jù)來源:
https://github.com/NateScarlet/holiday-cn/tree/master
安裝依賴
首先,確保安裝了 pandas 和 openpyxl。你可以使用以下命令來安裝:
pip install pandas openpyxl
示例代碼
以下是一個示例代碼,展示如何將你的 JSON 數(shù)據(jù)轉(zhuǎn)換為 Excel 文件:
import pandas as pd
import json
from pandas import ExcelWriter
# 假期數(shù)據(jù) JSON
holiday_data = {
"$schema": "https://raw.githubusercontent.com/NateScarlet/holiday-cn/master/schema.json",
"$id": "https://raw.githubusercontent.com/NateScarlet/holiday-cn/master/2024.json",
"year": 2024,
"papers": [
"https://www.gov.cn/zhengce/zhengceku/202310/content_6911528.htm"
],
"days": [
{"name": "元旦", "date": "2024-01-01", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-04", "isOffDay": False},
{"name": "春節(jié)", "date": "2024-02-10", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-11", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-12", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-13", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-14", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-15", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-16", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-17", "isOffDay": True},
{"name": "春節(jié)", "date": "2024-02-18", "isOffDay": False},
{"name": "清明節(jié)", "date": "2024-04-04", "isOffDay": True},
{"name": "清明節(jié)", "date": "2024-04-05", "isOffDay": True},
{"name": "清明節(jié)", "date": "2024-04-06", "isOffDay": True},
{"name": "清明節(jié)", "date": "2024-04-07", "isOffDay": False},
{"name": "勞動節(jié)", "date": "2024-04-28", "isOffDay": False},
{"name": "勞動節(jié)", "date": "2024-05-01", "isOffDay": True},
{"name": "勞動節(jié)", "date": "2024-05-02", "isOffDay": True},
{"name": "勞動節(jié)", "date": "2024-05-03", "isOffDay": True},
{"name": "勞動節(jié)", "date": "2024-05-04", "isOffDay": True},
{"name": "勞動節(jié)", "date": "2024-05-05", "isOffDay": True},
{"name": "勞動節(jié)", "date": "2024-05-11", "isOffDay": False},
{"name": "端午節(jié)", "date": "2024-06-10", "isOffDay": True},
{"name": "中秋節(jié)", "date": "2024-09-14", "isOffDay": False},
{"name": "中秋節(jié)", "date": "2024-09-15", "isOffDay": True},
{"name": "中秋節(jié)", "date": "2024-09-16", "isOffDay": True},
{"name": "中秋節(jié)", "date": "2024-09-17", "isOffDay": True},
{"name": "國慶節(jié)", "date": "2024-09-29", "isOffDay": False},
{"name": "國慶節(jié)", "date": "2024-10-01", "isOffDay": True},
{"name": "國慶節(jié)", "date": "2024-10-02", "isOffDay": True},
{"name": "國慶節(jié)", "date": "2024-10-03", "isOffDay": True},
{"name": "國慶節(jié)", "date": "2024-10-04", "isOffDay": True},
{"name": "國慶節(jié)", "date": "2024-10-05", "isOffDay": True},
{"name": "國慶節(jié)", "date": "2024-10-06", "isOffDay": True},
{"name": "國慶節(jié)", "date": "2024-10-07", "isOffDay": True},
{"name": "國慶節(jié)", "date": "2024-10-12", "isOffDay": False}
]
}
# 轉(zhuǎn)換為 DataFrame
df = pd.DataFrame(holiday_data['days'])
# 更改表頭
df.columns = ['假期名稱', '日期', '是否休假']
df['是否休假'] = df['是否休假'].replace({True: '1', False: '0'})
# 顯示 DataFrame
print(df)
# 保存為 Excel 文件
output_file = 'china_holidays_2024.xlsx'
with ExcelWriter(output_file, engine='openpyxl') as writer:
df.to_excel(writer, sheet_name='Holidays', index=False)
print(f"Excel 文件已保存到 {output_file}")
print(f"Excel 文件已保存到 {output_file}")
代碼說明
- 導入庫:導入
pandas和json。 - 定義假期數(shù)據(jù):假期數(shù)據(jù)存儲在
holiday_data變量中。 - 轉(zhuǎn)換為 DataFrame:使用
pd.DataFrame()將假期數(shù)據(jù)轉(zhuǎn)換為 Pandas DataFrame。 - 保存為 Excel 文件:使用
df.to_excel()將 DataFrame 保存為 Excel 文件。 - 打印消息:顯示文件保存路徑。
運行此代碼后,將生成一個名為 china_holidays_2024.xlsx 的 Excel 文件,其中包含假期的詳細信息。
到此這篇關于使用Python將JSON格式的假期數(shù)據(jù)轉(zhuǎn)換為Excel文件的文章就介紹到這了,更多相關Python JSON數(shù)據(jù)轉(zhuǎn)為Excel內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

