Tópicos populares: Multilogin X, Multilogin 6,
Automação de navegador em Puppeteer no Multilogin 6
Índice
Puppeteer é uma biblioteca para Node.js que fornece uma oportunidade de automatizar processos com um navegador baseado em Chromium por meio de API de alto nível sobre o Chrome DevTools Protocol. Por exemplo, você pode criar rastreadores da web que pesquisam e coletam dados usando o navegador Mimic com impressões digitais mascaradas.
Alocação de 6 portas Multilogin
No Multilogin, você precisa predefinir a porta do aplicativo para utilizar a automação Puppeteer.
- Vá para o diretório C:\Users\%username%\.multiloginapp.com e abra o arquivo app.properties usando qualquer editor de texto
- Adicione a seguinte string ao arquivo:
multiloginapp.port=[PORT_NUMBER]
O número da porta deve estar no intervalo de 10000 a 49151.
- Salve o arquivo app.properties
Depois disso, você poderá acessar o aplicativo Multilogin 6 por meio desta porta.
Para obter instruções mais detalhadas sobre como concluir essas etapas em diferentes sistemas operacionais, consulte este guia.
Como começar
Passo 1
Certifique-se de ter o Node.js e o gerenciador de pacotes npm instalados no seu PC. O Node.js e o npm podem ser baixados do site oficial do Node.js (as versões mais recentes do Node.js incluem o npm por padrão). Como alternativa, você pode usar o yarn para gerenciamento de pacotes do Node.js.
Você pode verificar a versão do seu Node.js e npm executando os seguintes comandos no terminal:
nodejs -v || node -v && npm -v
Passo 2
Crie um novo projeto npm no diretório atual:
npm init -y
Este comando criará um arquivo package.json e um parâmetro -y permite pular o questionário e criar um projeto com configurações padrão.
Passo 3
Instale Puppeteer -core no diretório do projeto:
npm install [email protected] --save
Certas versões do Puppeteer são compatíveis apenas com certas versões do Chromium. Você pode verificar nossas Notas de lançamento para atualizações do núcleo do navegador Mimic. Informações sobre a compatibilidade das versões Puppeteer e do Chromium estão disponíveis na documentação do Puppeteer.
Passo 4
Crie um arquivo.js com seu código de automação. Use o seguinte exemplo de código para referência:
const puppeteer = require('puppeteer-core');
const http = require('http');
async function startProfile(){
//Replace profileId value with existing browser profile ID.
let profileId = 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx';
let mlaPort = 35000;
/*Send GET request to start the browser profile by profileId.
Returns web socket as response which should be passed to puppeteer.connect*/
http.get(`http://127.0.0.1:${mlaPort}/api/v1/profile/start?automation=true&puppeteer=true&profileId=${profileId}`, (resp) => {
let data = '';
let ws = '';
//Receive response data by chunks
resp.on('data', (chunk) => {
data += chunk;
});
/*The whole response data has been received. Handling JSON Parse errors,
verifying if ws is an object and contains the 'value' parameter.*/
resp.on('end', () => {
let ws;
try {
ws = JSON.parse(data);
} catch(err) {
console.log(err);
}
if (typeof ws === 'object' && ws.hasOwnProperty('value')) {
console.log(`Browser websocket endpoint: ${ws.value}`);
run(ws.value);
}
});
}).on("error", (err) => {
console.log(err.message);
});
}
async function run(ws) {
try{
//Connecting Puppeteer with Mimic instance and performing simple automation.
const browser = await puppeteer.connect({browserWSEndpoint: ws, defaultViewport:null});
const page = await browser.newPage();
await page.goto('https://multilogin.com');
await page.screenshot({ path: `/home/${process.env.USER}/Desktop/multiloginScreenshot.png` });
await browser.close();
} catch(err){
console.log(err.message);
}
}
startProfile();
Passo 5
Inicie o arquivo .js através do terminal para iniciar seu script de automação:
nodejs example.js