NotebookLM-py is an unofficial Python library designed to provide programmatic access to Google's NotebookLM service. It allows users to interact with NotebookLM's features— including research, content generation, and agent skills—using Python. This library aims to simplify tasks like research automation, content creation, and integration of NotebookLM with other applications.
The primary technology leveraged is the Google NotebookLM API, accessed through HTTP requests. The library handles authentication and data formatting, enabling developers to seamlessly incorporate NotebookLM capabilities into their workflows.
This project stands out by providing a complete and actively maintained Python API for NotebookLM, exposing features not available through the web interface. A key distinction is its support for agent skills, allowing integration with LLM agents like Claude Code. The comprehensive set of capabilities, including various content generation options and advanced export functionalities, surpasses the limitations of the official web interface. Its active development and community-driven approach ensure ongoing support and feature enhancements.
- Notebook Management: Create, list, and manage notebooks, including adding and refreshing sources.- Content Generation: Generate various content formats like audio overviews, videos, slide decks, quizzes, and flashcards with extensive customization options.- Research Automation: Automate research processes by importing sources, running queries, and extracting insights programmatically.- Agent Skills Integration: Enables integration with LLM agents (e.g., Claude Code) for natural language automation and sophisticated workflows.- Extensive Export Options: Downloads artifacts in multiple formats (MP3, MP4, PDF, CSV, JSON, Markdown) and supports advanced exports like quiz/flashcard export and mind map JSON extraction.
The project is actively developed and maintained, with frequent updates and bug fixes. The availability of a stable PyPI release indicates a reasonable level of maturity. While the library relies on undocumented Google APIs, the team is responsive to issues, and the documentation is comprehensive. The community is growing, and the project demonstrates a commitment to long-term support.
NotebookLM-py benefits researchers, content creators, and developers seeking to automate workflows and integrate NotebookLM into their applications. It provides a valuable alternative to manual processes and unlocks advanced features not accessible through the web interface. By leveraging its comprehensive API, users can accelerate research, generate diverse content formats, and build sophisticated AI-powered tools.
