{
  "id": 19122320,
  "title": "Automating Google Calendar Screenshots with Playwright, rclone, and systemd",
  "url": "https://urgent.news/2026/11/09/automating-google-calendar-screenshots-with-playwright-rclone-and",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-11-09T08:55:14.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/nha6ki/automating-google-calendar-screenshots-with-playwright-rclone-and-systemd-4j6l"
  },
  "original_language": "en",
  "account": "The author sought a daily visual record of their Google Calendar, not an exported list of events. Capturing screenshots manually was repetitive, so they created a workflow on Ubuntu. The workflow combines Python and Playwright for browser automation, rclone for uploading to Google Drive, and systemd for scheduling. The basic pipeline worked, but authentication proved to be the most challenging aspect.\n\nThe source material details the architecture, including the use of Python/Playwright, a headless Google Chrome with a dedicated, authenticated profile, and the Google Calendar website for capturing the rolling seven-day view. The capture process relies on the Google Calendar interface and the browser's saved display settings.\n\nThe environment and dependencies used were Ubuntu 22.04, Playwright 1.48.0 with an installed Google Chrome, and a Python virtual environment. The setup includes installing Playwright's Chromium dependencies and launching a dedicated Chrome session for a persistent browser profile.\n\nThe author addressed the authentication issue by manually signing in to Google Chrome and creating a persistent browser profile. The automation script then uses this profile to navigate to the Google Calendar website, capture the view, and create a PNG file. The filename follows a date-based naming convention, and the screenshot captures the current webpage at the time of capture. The same workflow can be run multiple times, but it only replaces the existing file for the same day.\n\nAfter capturing the screenshot, the workflow uses rclone to upload the PNG file to a Google Drive folder named GoogleCalendarScreenshots. The author emphasizes that the captured screenshots are snapshots at the capture time and do not provide a way to reconstruct earlier calendar states. The example screenshot in the repository uses a separate demonstration calendar with fictional events.",
  "summary": "I wanted a daily visual record of my Google Calendar: not a list of events exported through an API, but an image of the calendar as it looked on a given day. Taking and uploading screenshots manually was repetitive, so I built a small workflow on Ubuntu that captures a rolling seven-day view and stores each image in Google Drive. The implementation combines Python and Playwright for browser…",
  "key_points": [
    "Python and Playwright automate Google Calendar screenshots daily",
    "rclone uploads PNG files to Google Drive for storage",
    "systemd schedules the workflow on Ubuntu"
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}