Então, muita gente vem pedir pra nós alguma coisa sobre. . .
Scrapping, né? Sobre Scraping, na verdade, que se chama. Que é basicamente pegar dados da internet e.
. . copiar, né?
Pegar os dados da internet e colocar em algum lugar. E, atualmente, fazer scraping é mais ou menos complexo. Você precisa saber pouquinho de Python, ou JavaScript, ou alguma linguagem de programação.
Você precisa manipular os dados, você precisa pegar dados que não são estruturados, por exemplo, e estruturar eles de uma forma que teu banco de dados vai entender, ou que teu modelo vai entender. E o que eu quero mostrar para você hoje é uma das soluções que eu encontrei aqui, que está usando o IA para fazer scraping. E é super simples, o melhor de tudo é que ela é gratuita.
Pelo menos por enquanto, ela é gratuita, não tem nenhum limite. eu achei legal mostrar para você aqui, talvez ajude no teu projeto, talvez você queira começar a descobrir esse mundo de scraping aí. E eu achei super interessante, porque eu gosto de scraping.
Os meus primeiros projetos, na verdade, foram voltados para isso. Eu criei uma vez projeto de buscar imóveis aqui na minha cidade que eles estavam para alugar em vários sites de imobiliárias e eu montei uma base de dados minha com esses imóveis para quando eu tivesse algum que eu me interessasse eu pudesse entrar em contato com o pessoal, com os corretores. E eu lembro que na época para fazer isso foi bem complexo, eu precisei fazer vários scrapings separados e tudo mais, para cada site.
E hoje eu descobri essa ferramenta aqui que eu vou mostrar pra você agora, que se chama Gina AI. olha só, essa Gina AI aqui, ela tem várias APIs, tá? Eu vou mostrar pra você aqui.
Por exemplo, eles têm Embeddings, Reranker, Auto Fine Tuning. Parece que eles têm muitas ferramentas principalmente voltadas para Enterprise, tá? Mas eles têm essa ferramenta aqui, que eu vou focar aqui hoje, que é o Reader.
Eu achei super legal como ele funciona, é super fácil. Tira toda uma camada de complexidade de cima de fazer Scraping. E você vai ficar de cara de como que ela funciona.
Olha só. Então ele tem uma API aqui, tem demo também pra você ver, tem o pricing. Por enquanto ela tá gratuita, tá?
Eu não sei quando que ela vai ser cobrada ou não. Mas o que esse reader é? Você basicamente tem site, por exemplo, eles colocaram aqui o example.
com, aí você usa o reader, colocando no começo desse site só o r. gina. ai barra o site que você quer fazer o scraping.
Aí ele já transforma esse texto aqui em markdown ou alguma coisa assim, que você pode mandar para modelo DIA que você está usando. E aqui tem vários abertos, você está vendo que tem o Gemini, OpenAI, a Cloud, o Dynatropic, Mixtrol, se eu não me engano isso aqui é addin, meta, e esse aqui eu não sei qual que é, sinceramente. E olha só como é que ele funciona.
Ele também tem a busca, tá? Eu não gostei tanto da busca, eu vou focar aqui mais no Reader, mas eles funcionam da mesma forma. Então, de novo, eles têm o site, você joga lá r.
gina. ai na frente e ele mostra o resultado. Ele também pega PDFs, tá?
Se você tiver algum PDF que tá numa URL ou alguma coisa assim, você coloca o r. gina. ai na frente desse PDF e ele vai transformar esse PDF em texto pra você.
Super legal, ele faz isso de forma bem legal. Como eu falei, ele está grátis, tá? Ele é grátis por enquanto.
Ele tem umas limitações aqui no reader, que é de 20 requests por minuto, mas é o suficiente, tá? Assim, pelo menos para os nossos projetinhos pequenos, por enquanto, é o suficiente. E se você criar uma chave de API, é de 200 requests por minuto.
E a latência aqui é de 3 segundos. Então, em média, é de 3 segundos para você pegar os dados do site e jogar para algum lugar. Você pode pegar a sua chave DPI aqui, não tem nenhum problema.
E aqui tem demo. Olha só como é que funciona. Eles têm site aqui, colocaram o site stanford.
edu. Para você fazer funcionar, você só coloca o r. gina.
ai na frente. Eu vou mostrar para você aqui agora, eu vou mostrar duas automações que eu fiz aqui usando o gina. ai.
Mas é assim que ela funciona, ela transforma todo esse site aqui em output, em Markdown. ela faz desse formato aqui. Inclusive, se eu copiar isso aqui e colar em algum leitor de Markdown, ele vai trazer para nós formatadinho, bonitinho.
E a Reader API funciona da mesma forma. A gente só precisa pegar a URL e colocar o r. gino.
ai na frente e ele vai trazer para nós aqui o texto em formato de Markdown. A precificação da API, caso você queira usar isso em produção, ela até dá milhão de tokens válidos para o Reader e para os outros produtos da Gino. ai.
e você pode usar sem nenhum problema. Aqui ele até fala que é o equivalente a ler o texto inteiro do Hobbit ou do Grande Gatsby. E aqui, bilhão de tokens é mais ou menos o mesmo que você ler todos os trabalhos do Shakespeare ou o Harry Potter todo.
É 20 dólares, ou seja, é dois centavos de dólar para cada milhão de tokens. Então, super legal. E aqui é se você quiser colocar em produção.
você quiser ler todos os. . .
artigos em inglês da Wikipedia é o equivalente a 11 bilhões de tokens, só para você ter uma noção. Então, é 200 dólares. Eu achei super barato.
Se você tem negócio que depende de usar scraping da internet, eu acho super legal, pelo menos porque ajuda a economizar tempão para fazer isso aqui. Eu quero mostrar para você na prática como é que funciona. Eu peguei aqui, Eu até vou usar de exemplo.
Eu entrei no site da Amazon e eu procurei os bestsellers. Eu entrei aqui nos bestsellers e eu quis transformar isso aqui usando dina. ai.
Eu vou mostrar para você daqui a pouquinho no N8n como é que ele vai ficar. É super simples. Mas o que eu fiz aqui é basicamente aqui na frente do HTTPS você coloca r.
dina. ai barra o site. Agora olha só o que ele vai fazer.
Por baixo dos panos ele vai pegar esse site, ele vai fazer todo o scrapping dele e ele vai transformar pra nós aqui em Markdown. Olha só que legal que ele ficou. Se você quiser ver, por exemplo, eu vou abrir meu Obsidian aqui e o Obsidian ele lê Markdown.
Então você pode ver. Então olha só, eu abri o Obsidian aqui e eu vou colar aquele texto. Olha só como é que ele vem.
Ele vem todo formatadinho, markdown pra nós. Ele traz os links. Ele traz aqui o título.
Ele traz a source, que foi usada pra fazer essa verificação aqui. Ele traz aqui todas as imagens que ele acha no site, tá? Ele também lê imagem.
Então se você mandar num site que tem uma imagem, ele vai entender aquela imagem pra você. E aqui ele traz tudo isso, os links, tudo tem lá no site da Amazon. E aqui ele traz o que importa pra nós.
Olha só, mais revendidos de livros. Ele trouxe o livro, o autor, o nome do livro e o preço. O segundo livro com a fotinha do livro, o nome, o autor e assim vai.
E tem essas classificações aqui. Então ele trouxe aqui todos os. .
. Ele trouxe aqui, se não me engano, 20 livros, que é o que é aberto lá no site da Amazon. Pelo menos quando você entra no site.
Eu já adianto que ele não é 100% perfeito. Eu vou mostrar para vocês daqui a pouquinho como que funciona. Mas eu vou fechar aqui.
Vamos voltar para cá. Então ele traz aqui para nós essa informação e eu vou mostrar uma aplicação prática dela já já no N8n usando a OpenAI. Só que você pode usar qualquer modelo da linguagem que você quiser aqui.
Não tem limite. Outra coisa que eu fiz também foi testar, até com site que é bem pesado aqui, com JavaScript, anúncios e tudo mais, isso aqui é negócio bem visual, cartilharia e tudo mais. Eu coloquei o r.
dina. ia aí na frente, desse site aqui do Brasileirão de Série A da Globo. Ele trouxe para mim a classificação corretinha aqui, bem legal.
Na verdade, ele trouxe aqui a classificação e aqui embaixo ele trouxe o resto da tabela. Se você quiser montar bot, por exemplo, que fala de Brasileirão Seriá, é super legal. Funciona aqui também, tá?
Eu vou mostrar pra você alguns exemplos práticos agora no N8n. Então, olha só. No N8n é super simples.
Eu tenho aqui três nós, tá? Eu fiz testezinho aqui só com o trigger manual aqui, mas você pode colocar isso aqui no chat, no WhatsApp, no Telegram, onde você quiser. Você pode usar, inclusive, os assistants.
Eu não estou usando os assistants aqui porque eu quis montar exemplo rápido aqui, prático pra você, mas você também pode usar os assistants, beleza? E olha só como é que funciona, né? Esse nó aqui ignora ele, não serve pra nada.
Esse nó aqui é o nó que nós usamos para fazer o request para dina. ai. Esse nó aqui é super simples.
HTTP request, tá? O método é o get e a gente só coloca o r. dina.
ai na frente da URL que a gente quer fazer o scraping. Nesse caso aqui, eu peguei o scripting da nossa página de vendas, lá do nosso curso, da nossa comunidade, inclusive te convido a fazer parte se você não faz parte ainda. Esse vídeo aqui, por exemplo, é vídeo que foi lançado antes da comunidade e depois aqui no YouTube, mas fica aí à vontade.
Eu peguei basicamente essa página aqui, que também está estruturadinha e tudo mais, e eu pedi para ela transformar isso aqui em fazer o scraping dessa ferramenta. Eu vou mostrar para você o resultado aqui eu coloquei. .
. Esse aqui foi o output dele. Então, ele fez esse scraping aqui para nós.
E aqui eu usei o nó da OpenAI. vim aqui em cima, eu procurei OpenAI. e eu vim aqui em message a model.
Eu usei esse modelo aqui porque é mais simples, eu não precisei usar HTTP request nem nada, eu não quero usar assistants também. E o que eu fiz aqui, super simples, você coloca a tua credencial, o resource aqui é text, mas você pode usar outros também, no meu caso aqui é text mesmo. A operação é message a model.
Eu estou usando 4O, então leve consideração que o custo é pouquinho maior do que o 3. 5, tá? E eu coloquei aqui nas messages, olha só.
Você vai receber dados sobre curso. Responda o usuário da melhor forma possível de acordo com o contexto. E eu coloquei isso aqui como system.
O system só existe no GPT, tá? Nesses modelos de chat e não no Assistant, infelizmente. Aqui embaixo, no contexto, eu coloquei o json.
data, que é o que vem daqui, do dina. ai. E a pergunta do usuário é essa aqui, quanto custa o curso?
eu mandei simplificar o output aqui, mas você pode trazer o output total. Inclusive, é até legal mostrar o total para você, para mostrar como que retorna, olha só. ele traz aqui mais informações, inclusive os toques.
Então, olha só, a de prompt foi 1899, então toma cuidado com isso. A gente tá mandando todo o conteúdo, tudo isso aqui, que é. .
. Opa, perdão, já tô dando spoiler aqui. Tudo isso aqui tá caindo como tokens de prompt lá dentro do nosso bot, tá?
Então, da nossa automação. Então, toma cuidado com isso. Você pode ver que foi 1899 tokens aqui.
Então, o custo pode ficar mais caro, né? E ele trouxe aqui para mim, olha só, o curso do Mini Automação custa R$ 797,00 e só vai estar válido até o final de junho de 2024. O valor inclui acesso por ano a mais de 10 horas de aula, suporte ao grupo do WhatsApp e tudo mais, tá?
Então ele trouxe isso aqui para nós baseado nesse contexto. É tipo file search, né, que eu já mostrei para vocês também. Mas ele é também.
. . Agora você pode buscar na internet se você quiser.
Eu achei isso super legal. Você pode colocar outras perguntas aqui. Você pode integrar isso aqui com o Assistant.
Também não tem regra. Você faz o que você quiser. Beleza?
Mas beleza. Eu quero mostrar agora conceito pouquinho mais avançado. Aproveitando aquele exemplo da Amazon que eu mostrei para vocês, eu montei uma automação aqui.
Inclusive, eu vou mostrar para vocês uma nossa base de dados aqui do Base Row, que é a tabela do Book, que é de uma automação que nós fizemos chamada Bookkeeper, que ela vende livros. Eu vou deixar o link para você dar uma olhada nessa automação aqui embaixo, nos comentários do YouTube. E o que era a minha ideia?
A minha ideia é pegar aquela lista de best-sellers da e popular a nossa tabela de book, a nossa tabela de livros no Base Row. Óbvio que isso aqui eu fiz em 15 minutos, então não está completo, a gente pode melhorar pouquinho mais, mas é só para mostrar para você o poder do que é possível fazer com isso aqui. Então olha só, basicamente, de novo, essa primeira etapa aqui é igual.
Eu tô fazendo o dina. ai na URL da Amazon de livros, tá? Eu posso até abrir de novo pra você aqui, que é essa URL aqui, tá?
Então eu peguei os mais vendidos e tô fazendo o dina. ai nela, beleza? Nenhuma autenticação não é necessária, a gente só precisa fazer o GET.
Ele trouxe aqui pra nós as informações da página. Então olha só, é muita coisa, tá vendo? É coisa pra caramba.
Ele pegou a página inteira, ele montou num. . .
num markdown pra nós, e a gente pode usar esse markdown na nossa automação. Então a gente rodou aqui, e aqui no OpenAI, nesse nó aqui, é o mesmo nó que eu usei anteriormente, eu só fiz uma alteração, que talvez seja uma novidade pra você. Modelos como o da OpenAI, principalmente o GPT-4 e em diante, e o 3.
5 também, se eu não me engano, Você pode pedir para ele pegar alguns dados que não têm estrutura, que é esse caso aqui. Não tem nenhuma estrutura em site. Ou a estrutura não é tão estruturada quanto banco de dados, por exemplo, ou objeto JSON.
E você pode pedir para ele retornar essas informações em JSON para você. Tem formato específico para você retornar. Isso aqui é ótimo para quando a gente precisa pegar dados não estruturados, estruturar esses dados e salvar no banco de dados que a gente tem como, por exemplo, base row, que é o caso da nossa tabelinha aqui de livro.
Então, olha só o que eu fiz aqui. Eu fiz a mesma história aqui em cima, não mudei nada. Só que aqui nas messages, no system, eu coloquei que ele vai receber uma lista de livros e precisa responder em JSON.
com os campos Book Name, Book Author e Book Price. Quando você vai usar essa funcionalidade do JSON, você precisa falar para ele o que você quer realmente. E se você ainda der exemplo do JSON, melhor ainda, mas do jeito que eu fiz aqui já funcionou.
O text aqui, literalmente, eu só coloquei no role do user o json. data, que é o que vem daqui, da dina. ai.
Beleza? Então, a gente só trouxe essas informações. Eu vou tirar o Simplify Output aqui também para testar uma coisa.
E lembre de marcar aqui o Output Content as a JSON. gente precisa que esse content aqui, que a OpenAI vai retornar para nós, seja no formato JSON, porque os nossos dados dependem disso. Eu vou testar esse step aqui pra você e ele vai demorar pouquinho só.
Então, olha só, ele demorou pouquinho aqui, acho que uns 10 segundos pra responder. Ele retornou pra nós aqui. O que importa é isso aqui, ó.
Ele trouxe array de livros pra nós, books, no formato de raison que eu pedi, ó, com o nome do livro, o nome do autor e o preço do livro. Então, ele trouxe aqui, ó, Café com Deus Pai, Junior Rostirola, R$49,90. Financeira, Morgan Housel, R$36,29.
Então, ele trouxe aqui o top 10, tá, ele trouxe só 10 pra nós. Tem algumas limitações, ele não traz todos, porque limitação de tokens, limitação de prompt e tudo mais. Uma coisa para prestar atenção aqui embaixo no uso, olha só, aqui em Usage, tem esse objeto Usage aqui, ele tem a quantidade de prompt tokens, que são os tokens de entrada, que foram 16.
119. Por que foram tantos? Porque a gente está mandando toda aquela página da Amazon direto para o OpenAI.
Isso acaba, nós vamos encher o nosso prompt de informações. Mas o completion tokens aqui embaixo foram só 513. Então, os tokens de output, que são os mais caros, hoje com 4O é 15 dólares para cada milhão de tokens de output.
Então, foram só 513. Então, realmente o custo maior está no input, que hoje no GPT-4O é de 5 dólares para cada milhão de tokens. E no de output, que foi o mais caro, que é o mais caro, foram só 513 tokens.
relativamente barato. Mas o legal está no que a gente pode fazer com a resposta disso aqui. Aqui que está graça.
Nós vamos pegar esses livros que vieram nesse array e a gente vai jogar no nosso banco de dados. Eu vou mostrar para você o que está acontecendo ao vivo. que eu precisei fazer aqui?
Eu só precisei pegar exatamente o books que está aqui dentro. Eu vou até mudar aqui porque eu rodei de outra forma da última vez. Eu vou pegar esses books que estão aqui dentro.
que vai fazer? Ele vai pegar só isso aqui. Eu quero só o que está aqui dentro desse books porque eu quero só esse array aqui debaixo.
O resto não me importa agora. Beleza? Próxima etapa aqui é fazer split out.
O que a gente vai pegar são os livros que vêm do objeto anterior e a gente vai separar eles em partes. Eu vou rodar isso aqui agora para você ver o que vai acontecer. Ele pegou aqui para mim só os books.
Então, ele pegou tudo que estava aqui, ele está ignorando, ele está me pegando só o books e colocando aqui do lado para mim. Então, você pode ver que são 10 livros, do 0 ao 9. separei em array para mim.
E aqui no split out, eu vou pegar esses livros aqui e eu vou testar esse step aqui para mostrar para você o que aconteceu. Ele trouxe 10 itens. Ele separou cada desses itens aqui do lado, da esquerda, ele separou em item para mim separado aqui do lado.
Separou em item separado é bom, né? Ele separou aqui para mim e agora eu posso fazer loop neles, olha só, 10 itens. Eu posso fazer loop neles, a e salvar esses livros do meu banco de dados.
Então, o que eu fiz? Eu só abri aqui o Base Row. Peguei a minha tabela lá e tudo mais.
O name, eu tô salvando o nome do livro e o autor, tá? Eu não vou salvar o preço aqui porque meu tipo aqui tá como número e eu ia ter que transformar o que vem do dina. ai num número e eu não quero fazer isso agora, tá?
Meu objetivo aqui é mostrar pra você como usar esse DynAI, fazer scrapping e salvar esses dados no banco de dados. Tem muito tratamento que dá para fazer aqui ainda, mas não é o objetivo desse vídeo. Então, olha só, eu vou começar a rodar ele aqui agora do zero.
Então, ele vai rodar de novo, ele vai jogar para o OpenAI. Vamos ver aqui ao vivo quanto tempo vai levar. Ele vai pegar só o array, ele vai fazer o split out dele, ele vai fazer o loop entre todos aqueles itens que ele vai trazer para nós e eu vou salvar esses livros no meu banco de dados, com o nome e o autor.
Então, olha só. O engraçado é que dessa vez ele trouxe 30, né? Então, ele deve ter carregado mais a página.
Não é. . .
Como eu falei pra você no começo do vídeo, não é perfeito, tá? Mas olha só, ele tá salvando aqui, ele já salvou 5. E olha só.
Café com Deus Pai, Psicologia Financeira, Homem Messico da Babilônia. Ele tá salvando cada deles aqui, tá vendo? Com o autor e o nome do livro.
Ele vai salvar os 30, né? Os 30 top aqui, se eu não me engano. Foram 30.
Por que que acontece isso? Provavelmente quando o botzinho da Dina entra no site, dessa vez ele esperou carregar mais, ele esperou carregar os 30. Porque esse site da Amazon aqui, ele carrega 10, depois ele carrega mais 10, tá?
Então não é, como eu falei pra você no começo do vídeo, não é 100% confiável ainda, mas pra coisas como essa aqui, por exemplo, atualizar minha base de dados de livros, né, que a gente usa no nosso bot Bookkeeper. 100% funcional, sem problema nenhum. Imagine isso aqui em aplicações práticas.
Por exemplo, como eu falei para você no começo do vídeo, eu tinha feito já bot há tempo atrás que pegava os imóveis de várias imobiliárias e salvava no banco de dados. Agora fica muito mais fácil fazer isso com o dina. ai.
Óbvio que tem o custo, né, gente? Tem o custo. Você pode jogar para o OpenAI, mas você pode usar o modelo mais barato.
Você não precisa usar o modelo 4. 0. Eu estou usando aqui só por costume mesmo, porque ele só vai separar essas informações num JSON para nós.
E olha só, ele rodou aqui os 30, ele salvou os 30 livros aqui. Então, a gente chegou até o gatilhos mentais, o guia, não sei o que. O guia completa estratégias de negócios e comunicações provadas para você aplicar.
Nossa senhora! é isso, tá? Então, ele salvou todos os livros aqui na nossa base de dados e eu posso rodar.
Imagina que eu posso rodar isso aqui todo dia. Eu posso ter uma lista dos best-sellers e ir atualizando a minha lista de livros lá na minha base de dados. É dessa forma, tá?
Bem legal, super fácil agora fazer Scraping com o Dyna. AI. Leve em consideração as limitações, como eu já falei para você.
Também não é a única forma de fazer Scraping usando o IA. Tem outras formas também que eu vou tentar mostrar nos próximos vídeos aí, mas já funciona para você. Aplicações disso aqui.
Como eu falei, essa aqui é uma boa aplicação, você pegar dados não estruturados e salvar no banco de dados. por exemplo, o que eu fiz aqui com o dina. ai, pegando os dados da minha página de vendas, eu posso transformar, pegar o que saiu do dina.
ai transformar num arquivo, num pdf, por exemplo, ou num txt, Dentro do próprio Neo2j, a gente consegue fazer isso e subir esse arquivo como file search dentro do nosso Assistant. Se você não sabe o que é isso, não se preocupe. Se você já faz parte da nossa comunidade, você já sabe o que é.
Mas se você não sabe, tem algum vídeo no meu canal que eu falo sobre isso. E a gente pode criar, então, documentos e tudo mais de forma bem. .
. dinâmica dentro do usando o DNAI e usando os assistentes da OpenAI. que tenha ficado claro, espero que você tenha gostado.
Eu quero ver os projetos que você vai fazer usando Gina. AI. Eu já estou pensando em algumas coisas e vou ver se eu mostro para vocês depois.
Mas é isso. Espero que você tenha gostado. Aproveita que é uma ferramenta gratuita.
É super legal de usar ela. É super fácil. Você viu que eu não precisei fazer nada mirabolante aqui.
E abre muita possibilidade para nós. Para quem está mexendo com automações, principalmente no code. Abre muita possibilidade para nós.
Beleza? isso aí e até a próxima.