Como criar um clicador de sites com NodeJS
Aprenda a criar um clicador de sites usando Node.js e Puppeteer. Neste tutorial, abordaremos a instalação do Node.js, configuração do projeto, interação com elementos da página e automação de ações, como curtir artigos em um site específico.
[ Hits: 2.426 ]
Por: Fábio Berbert de Paula em 01/04/2023 | Blog: https://fabio.automatizando.dev
const puppeteer = require('puppeteer') const URL = 'https://www.vivaolinux.com.br' // Função para extrair links dos artigos const extractLinks = async (page) => { const rows = await page.$$eval( 'div.media-body > h3 > a.home-link', (rows) => rows .map((row) => (row ? row.getAttribute('href') : null)) .filter((row) => row !== null) .slice(0, 3) ) return rows } // Função para curtir um artigo const likeInPage = async (page, href) => { const ARTICLE_URL = URL + href await page.goto(ARTICLE_URL) console.log('Acessar artigo:', ARTICLE_URL) // Clicar no botão de curtir await page.click('a[data-tipo="like"]') console.log('Artigo curtido!') } // Função principal const main = async () => { // Inicializa o Puppeteer const browser = await puppeteer.launch({ headless: true }) const page = await browser.newPage() // Configura o viewport para formato de desktop await page.setViewport({ width: 1280, height: 800, deviceScaleFactor: 1, isMobile: false, }) // Acessa a página inicial do Viva o Linux await page.goto(URL) console.log('Extrair link dos 3 últimos artigos...') // Extrai os links dos artigos const hrefs = await extractLinks(page) // Curtir cada artigo usando a função likeInPage for (const href of hrefs) { await likeInPage(page, href) } // Fecha o navegador await browser.close() } // Executa a função principal main()
Integrando o Exim4 com o SendGrid
Como ter o chatGPT no terminal Linux
Fazendo seu Linux falar com espeak
Criando um painel de rede em PHP
jQuery - Criando um simples jogo da velha
CSS - Manual de Estilo (parte 2)
Servidor LAMP no Linux Mint e Ubuntu
Formulários HTML: Problemas com campos desabilitados?
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Aplicativo simples para gravar tela
Quebra de linha na data e hora no Linux Mint
Firefox não abre em usuário não administradores (2)
Ubuntu com problemas no áudio (1)
Sempre que vou baixar algum pacote acontece o erro dpkg (8)
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (8)