Importação Zotero para NotebookLM
Importe os anexos locais de uma coleção do Zotero para o NotebookLM com nomenclatura determinística, comportamento seguro para reexecução e filtro padrão para PDF.
Use o script empacotado em vez de reimplementar o fluxo de trabalho manualmente.
Pré-requisitos
Verifique estes itens antes de executar a importação:
nlmestá instalado e noPATH- Os dados do Zotero existem localmente, geralmente em
~/Zotero/zotero.sqlitee~/Zotero/storage
Não verifique manualmente a autenticação no uso normal. O script sempre executa nlm login --check primeiro e inicia nlm login automaticamente quando a sessão está ausente ou expirada.
Fluxo de Trabalho
- Execute o importador com
uv run.
uv run ~/.codex/skills/notebooklm-zotero-import/scripts/import_zotero_to_notebooklm.py \
--collection "Limit Order Book" \
--notebook-base "LOB_TTT"
- Deixe o script realizar todo o fluxo:
- verificar o estado de login do
nlme executarnlm loginquando necessário - abrir o SQLite do Zotero em modo somente leitura imutável
- resolver a coleção pelo nome exato
- percorrer coleções descendentes
- opcionalmente, filtrar itens do Zotero por substring normalizada do título com
--title-match - resolver cada anexo para um arquivo real dentro do armazenamento do Zotero
- manter apenas extensões de upload local suportadas pelo NotebookLM solicitadas; padrão
pdf - dividir uploads em fragmentos de notebook com no máximo 50 arquivos
- reutilizar um notebook existente com o mesmo nome quando ele é único
- pular arquivos já presentes no notebook de destino com base em títulos e nomes de arquivo normalizados
- enviar arquivos faltantes através de
nlm source add --file ... --wait
O script falha rapidamente para extensões que não estão na lista oficial de upload local do NotebookLM. Em 21 de abril de 2026, essa lista inclui:
- documentos:
pdf,docx,txt,md,csv,pptx,epub - imagens:
avif,bmp,gif,heic,heif,ico,jp2,jpe,jpeg,jpg,png,tif,tiff,webp - áudio e mídia:
3g2,3gp,aac,aif,aifc,aiff,amr,au,avi,cda,m4a,mid,mp3,mp4,mpeg,ogg,opus,ra,ram,snd,wav,wma
Extensões fora desse conjunto, como mlx, são rejeitadas localmente antes do upload.
- Leia o resumo final para:
- notebooks tocados
- arquivos enviados
- arquivos pulados por já estarem presentes
- falhas, se houver
Regras de Nomenclatura
- Use o nome base inalterado quando a coleção couber em um notebook.
- Use sufixos
_01,_02, ... quando a coleção precisar de vários notebooks. - Reutilize um notebook existente apenas quando exatamente um notebook tiver o título alvo.
- Falhe em vez de adivinhar quando o nome da coleção Zotero for ambíguo ou vários notebooks compartilharem o mesmo título.
Comandos Comuns
Importar todas as correspondências de PDF padrão em uma coleção:
uv run ~/.codex/skills/notebooklm-zotero-import/scripts/import_zotero_to_notebooklm.py \
--collection "Limit Order Book" \
--notebook-base "LOB_TTT"
Importar o PDF de um artigo nomeado de uma coleção:
uv run ~/.codex/skills/notebooklm-zotero-import/scripts/import_zotero_to_notebooklm.py \
--collection "Limit Order Book" \
--title-match "LiT: limit order book transformer" \
--notebook-base "LOB_TTT_single"
Importar o PDF de um item nomeado e outro tipo de anexo suportado:
uv run ~/.codex/skills/notebooklm-zotero-import/scripts/import_zotero_to_notebooklm.py \
--collection "SGN.300" \
--title-match "Homework_4" \
--extension pdf \
--extension md \
--notebook-base "SGN300_hw4"
Se você solicitar um formato local não suportado, como mlx, o script para imediatamente com um erro de validação claro.
Usar um perfil não padrão do NotebookLM:
uv run ~/.codex/skills/notebooklm-zotero-import/scripts/import_zotero_to_notebooklm.py \
--collection "Limit Order Book" \
--title-match "DeepLOB" \
--notebook-base "LOB_TTT_deeplob" \
--profile default
Substituir caminhos locais do Zotero:
uv run ~/.codex/skills/notebooklm-zotero-import/scripts/import_zotero_to_notebooklm.py \
--collection "Limit Order Book" \
--notebook-base "LOB_TTT" \
--zotero-db ~/Zotero/zotero.sqlite \
--zotero-storage ~/Zotero/storage
Recursos
scripts/import_zotero_to_notebooklm.py: importador de ponta a pontareferences/workflow.md: detalhes de comportamento, regras de correspondência e condições de falha