Web scraping no vibe coding: a Function parece bot e o YouTube bloqueia
Web scraping via Function no Supabase parece bot: o YouTube bloqueia o título. Avise os campos e deixe o usuário preencher na mão.
Web scraping no vibe coding do Bookbase, gerenciador de favoritos com extensão Chrome, passa pela Function do Supabase. Gabriel colou 1 link do YouTube para a Function buscar título e descrição da URL. O título do vídeo não veio: o site leu o fetch como bot e bloqueou.
como eu tô tentando acessar via função o site, eles entendem que é um bote, parece. E bloquei.
O recorte desta live é esse fetch no servidor. Pela extensão, como ele já está na página, o título vem. Da Function, o YouTube trata o acesso como bot. Ele pede tratativa: se a busca passar, dizer quais campos atualizaram; se não passar, informar para o usuário preencher na mão.
COMPARAÇÃO
Pela extensão
Ele já está na página. O título vem.
Pela Function
O fetch sai do servidor. O YouTube lê como bot e bloqueia o título.
A Function no Supabase e o YouTube que não entrega o título
Gabriel precisava implementar 1 Function e nunca tinha mexido nisso. O código que ele coloca vira um endpoint no Supabase, um micro serviço no mesmo lugar do banco, rodando sob demanda, esperando alguém chamar. O job: a pessoa cria 1 favorito, a Function acessa o site e pega metadados, título e descrição da página. O mesmo problema apareceu em open graph.
O título do YouTube não veio.
Não tá conseguindo puxar as informação nem a pau.
Ele bota o link e abre via script para extrair as informações. O diagnóstico do bot entra nesse acesso via função. Cola o YouTube e o automático não preenche o favorito.
S Ai do YouTube deu velho. Consigo puxar o título aqui automático.
No ASR, YouTube deu velho. O título automático não entrou no favorito. A live não mostra esse YouTube passando depois do pedido de tratativa.
Algumas buscas de metadados passam e outras não
Ele olhou o conjunto de buscas e mandou o prompt para o agente:
Notei que alguma busca pelos metadados funcionaram e outras não. Tem como fazer uma tratativa para informar quando a busca acontecer com sucesso e quais campos foram atualizados e quando não for possível informar pro usuário preencher manualmente.
Os campos são título e descrição. Busca ok, diz quais campos atualizaram; busca bloqueada, pede para o usuário digitar. O YouTube ficou na falha e outras buscas de metadados passaram, sem ele listar quais.
COMPARAÇÃO
Busca ok
Diz quais campos atualizaram, título e descrição.
Busca bloqueada
Informa para o usuário preencher na mão.
No mesmo fôlego vem o arrependimento do teste:
Ai ai devia ter testado antes com outras antes.
Faltou colar outras URLs antes de gravar. Na mesma live ficou o recorte de não dar select em 1000 favoritos a cada foco. Aqui o buraco é o web scraping da Function. Foi o mesmo caminho de vibe coding para verificar a empresa no stripe. Isso aparece também em vibe coding para o card inteiro ser o link. O mesmo problema apareceu em core web vitals.
No vibe coding da Function, avise o que atualizou e deixe preencher
No vibe coding de um gerenciador de favoritos, o builder cola 1 URL. Gabriel deixa no prompt a tratativa e o teste com outras, e a sessão grava o pedido. O YouTube preenchendo sozinho não entra neste recorte.
Noutra live a captura do título ficou no cliente, na página SPA. Nesta o fetch sai da Function no servidor.
Amanhã, no teste da Function que busca a URL, cola outras além do YouTube. Confere título e descrição em cada uma. A que passou, avise quais campos atualizaram. A que o servidor bloqueou, o usuário preenche na mão.
Dá para assistir à live e ouvir o bote e o YouTube deu velho.