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.854 ]
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()
adb - Como capturar em vídeo a tela de seu Android
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Placa Intel PRO/Wireless 3945ABG no Debian Linux
Criando JPG animado com o JpegAnim
ExtJS: Um excelente framework de JavaScript
BlueGriffon, o dreamweaver do Linux
CSS - Manual de Estilo (parte 2)
Berry Bank: Criando um Banco Digital Gamificado para seus Filhos com Gentoo, Flask e Tailscale
Papagaiando o XFCE com temas e recursos
Instale o DOOM Retro no Gentoo facilmente via Overlay
Steam (Flatpak) rodando jogos em partição NTFS
O dock Plank + U-Launcher deixam qualquer desktop mais produtivo
Instalar Linux em notebook Sony Vaio VPCEG13EB (17)
Alguém tem que acabar com ANATEL!!! (10)
O que você está ouvindo agora? [2] (229)









