{"repo":"israelbls/notebooklm-podcast-automator","free":true,"listed":false,"github":"https://github.com/israelbls/notebooklm-podcast-automator","clone":"git clone https://github.com/israelbls/notebooklm-podcast-automator.git","description":"REST API to automate Google NotebookLM - upload sources (URLs, YouTube, text) and generate AI podcast-style Audio Overviews programmatically. Built with FastAPI & Playwright.","language":"Python","stars":111,"topics":["ai","automaiton","browser-automation","fastapi","google","notebooklm","plawright","python"],"license":"MIT","category":"scrapers-browser-automation","readme_excerpt":"NotebookLM Podcast Automator Automate Google NotebookLM with a small FastAPI service and Playwright. Upload sources (URLs, YouTube videos, or raw text), generate Audio Overviews, and retrieve the finished files programmatically—no manual clicking through the UI. --- Key Features - Upload multiple source types (URL, YouTube, text) into a notebook via REST. - Trigger Audio Overview generation with optional style and prompt overrides. - Track generation status and fetch download URLs or the binary audio file. - Handles English and Hebrew NotebookLM interfaces automatically. - Can auto-launch Chrome with a dedicated profile or attach to an existing debug session. --- Architecture At A Glance - FastAPI app ( notebooklm automator.api.app ) exposes REST endpoints in api/routes.py . - NotebookLMAutomator ( core/automator.py ) orchestrates Playwright, manages language detection, and delegates to feature managers. - Browser control ( core/browser.py ) handles Chrome remote-debugging and profile management. - Sources & audio managers ( core/sources.py , core/audio.py ) interact with the NotebookLM UI to add sources, generate audio, and fetch downloads. - Selectors ( core/selectors.py ) provide localized UI selectors for supported languages. --- Prerequisites - Python 3.9+ - Google Chrome or Chromium with remote debugging enabled - A NotebookLM account and an existing notebook URL - uv (optional but recommended for reproducible installs) --- Installation From the repository root: Using u","default_branch":null,"files":null,"tree":[],"storefront":"/r/israelbls","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/israelbls/notebooklm-podcast-automator/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}