import xml.etree.ElementTree as ET
from datetime import datetime, timedelta
root = ET.Element("opml", version="2.0")
head = ET.SubElement(root, "head")
ET.SubElement(head, "ownerEmail").text = "contact@gregoryleeman.com"
body = ET.SubElement(root, "body")
# Day colors for each weekday
day_colors = ["red", "teal", "pink", "green", "yellow", "sky", "purple"]
# Adjust start date to ensure weeks start on Sunday
start_date = datetime(2025, 1, 5)
for week_number in range(1, 53):
week_outline = ET.SubElement(body, "outline", text=f"2025 Week {week_number}")
ET.SubElement(week_outline, "outline", text="") # Empty bullet before the first day
for day in range(7):
current_date = start_date + timedelta(days=(week_number-1)*7 + day)
day_name = current_date.strftime('%A')
color = day_colors[current_date.weekday()]
day_text = f"{day_name}"
note_text = (f"")
day_outline = ET.SubElement(week_outline, "outline", text=day_text, _note=note_text)
ET.SubElement(day_outline, "outline", text="")
# Output the XML as a string and print it
xml_str = ET.tostring(root, encoding="unicode")
print(xml_str)