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: 1.792 ]
Por: Fábio Berbert de Paula em 01/04/2023 | Blog: https://mestrefabio.com
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()
Otimizando seu web server com Apache2 + Lighttpd
Mais uma política "suja" de marketing da Microsoft
Fazendo seu Linux falar com espeak
Novo tipo de vírus pode afetar tanto Windows quanto Linux
Listar dados em MySQL utilizando PHP e AJAX (parte 1)
Como traduzir Software Livre - Um método fácil
EditorConfig - Padronização de código para seus projetos
Como minimizar CSS e Javascript via linha de comando
Atualizar o macOS no Mac - Opencore Legacy Patcher
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Instalando Zoom Client no Fedora 40
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Envio de link pelo whatsapp (1)
Pi Network.... alguém minera? (8)