저는 우분투 서버(터미널만 해당)를 사용하고 있으며 (도메인 간 문제를 피하기 위해) 특정 웹 사이트에서 실행해야 하는 JavaScript가 있습니다.
기본적으로 기존 브라우저를 사용하는 경우 다음 단계를 따릅니다.
- 브라우저 열기
- 웹사이트를 열어
- 콘솔을 열고 자바스크립트 코드를 실행하세요.
그럼 터미널에서는 어떻게 해야 할까요?
답변1
신선하고 유지관리된 realCode™ 예시크롬 도금 헤드리스통과하다노드 js그리고인형극기준 치수:
// https://codeburst.io/a-guide-to-automating-scraping-the-web-with-javascript-chrome-puppeteer-node-js-b18efb9e9921
const puppeteer = require('puppeteer');
let scrape = async () => {
const browser = await puppeteer.launch({headless: true, args: ['--no-sandbox', '--disable-setuid-sandbox']});
const page = await browser.newPage();
await page.goto('https://99bitcoins.com/bitcoin-rich-list-top100/#addresses');
await page.waitFor(3000);
const result = await page.evaluate(() => {
var obj = {};
var data = document.querySelectorAll('table.t99btc-rich-list tr');
for (var i = 1; i<=100; i++) {
obj[i] = {
"hash": data[i].querySelector('td > a').innerText,
"balance": data[i].querySelector('td:nth-of-type(3)').innerText
}
}
return obj;
});
browser.close();
return result;
};
scrape().then((value) => {
console.log(JSON.stringify(value, null, 4));
});
용법:
node top_xbt.js