iT邦幫忙

2025 iThome 鐵人賽

DAY 22
0

今天來試著加入excel功能,
上方先匯入相關函式
import openpyxl
from openpyxl.styles import Font, Alignment
以之前加入PDF的經驗來講
def save_as_excel(filename, itinerary_text):
//這邊會直接把文字檔存成excel
wb = openpyxl.Workbook()
ws = wb.active
ws.title = "行程表"
//開一個工作表並取名
//確認標題列
headers = ["時間", "活動/景點", "交通方式", "Google Maps"]
ws.append(headers)

// 統一格式:對齊 + 粗體
for col in range(1, len(headers) + 1):
ws.cell(row=1, column=col).font = Font(bold=True)
ws.cell(row=1, column=col).alignment = Alignment(horizontal="center", vertical="center")

// 解析行程文字,分配位子
for line in itinerary_text.split("\n"):
if "上午" in line or "下午" in line or "晚上" in line:
ws.append([line.strip(), "", "", ""])
elif "https://maps.google.com" in line:
ws.append(["", "", "", line.strip()])
elif "交通" in line:
ws.append(["", "", line.strip(), ""])
else:
if line.strip():
ws.append(["", line.strip(), "", ""])

//以下為調整不同文字欄的欄寬
ws.column_dimensions["A"].width = 15
ws.column_dimensions["B"].width = 50
ws.column_dimensions["C"].width = 20
ws.column_dimensions["D"].width = 50

wb.save(filename)//儲存

在主程式的地方加上
// Excel的部分
save_as_excel(f"{base_filename}.xlsx", itinerary)
print(f"✅ 行程已存成 {base_filename}.xlsx")
https://ithelp.ithome.com.tw/upload/images/20251006/20168983SZmczfzSRh.png
我們就可以得到初步整理的excel檔了


上一篇
AI 旅遊規劃師:Day 12
下一篇
AI 旅遊規劃師:Day 14
系列文
利用生成式AI連結生活,完成自我挑戰24
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言