inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Node.js로 웹 크롤링하기

4-2. 인피니트 스크롤 태그 분석하기

선장님 도와주십쇼!

해결된 질문

172

집중하기 매우 어려움

작성한 질문수 8

0

import puppeteer from "puppeteer";
import axios from "axios";
import fs from "fs";

const botAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36";

const crawlerBot = async () => {
  try {
    const browser = await puppeteer.launch({
      headless: false,
      args: ["--window-size=1920,1080"],
    });
    const page = await browser.newPage();
    await page.setUserAgent(botAgent);
    await page.goto("https://unsplash.com");
    await page.waitFor(2000);
    const result = await page.evaluate(() => {
      const imageArray = [];
      const image = document.querySelectorAll(".ripi6 img.YVj9w");
      if (image.length) {
        image.forEach((e) => {
          imageArray.push(e);
        });
      }
      return imageArray;
    });
    console.log(result);
    await page.close();
    await browser.close();
  } catch (err) {
    console.error(err);
  }
}

crawlerBot();

강의에서 빈값이 들어있는 이유랑 연관이 있는 거 같은데

태그를 찍어봤더니 전부 빈 객체가 들어있습니다.(다른 태그들도 빈 객체) 

언스플래쉬 사이트가 철통보안을 쳐놓은 걸까요?

콘솔 태그 결과입니다.

 

 

웹-크롤링 nodejs puppeteer javascript

답변 1

1

제로초(조현영)

태그 자체는 못 가져옵니다. 태그의 데이터만 뽑아서 가져올 수 있습니다. json형식으로요.

0

집중하기 매우 어려움

cheerio처럼 html 해석하는 걸로 착각했네요 감사합니다.

headless 궁금한게 있어요!

0

419

2

6강 프록시 서버 테스트 관련하여

0

342

2

페이스북 로그인 로그아웃 자동화관련

0

278

2

3-2 axios로 이미지 저장하기에서 axios 관련 오류..

0

269

2

3-1 이미지 다운로드 준비하기 에서 선택자 구성 질문

0

250

3

2-4 csv 출력하기에서 오류 발생

0

294

3

try-puppeteer.appspot.com 을 사용할 수 없나요?

0

151

1

크롬 확장프로그램 관련 질문드립니다.

0

170

1

크롤링 자바스크립트 exe파일

0

556

1

puppeteer 관련

0

599

2

6-3 proxy-database 관련

1

288

1

크롤링을 여러개 돌리려면 어떠한 방법을 선택하는게 좋을까요?

0

794

1

네이버 영화 평점 크롤링 (axis cheerio)

1

490

1

아래 noscript 내용입니다.

0

528

1

크롤링

0

378

1

앱 크롤링

0

1784

1

페이스북 로그인

0

544

1

2019년도 영상이라 error가 나는 걸까요? 2-4. csv에 출력하기에서 error

1

461

1

안녕하세요! for of와 Promise.all 차이점에 관해서 질문드려요!

0

440

2

대량 요청 처리 방법

0

464

1

구글 패스워드 자동입력시 오류

0

251

1

반복크롤링 할 때 아래 질문주신분 하고 약간 형태가 달라요

0

367

2

인스타그램 돔의 value 값으로 쿼리셀렉터 찾을 수 있나요?

0

301

1

페이스북 로그인시 돔이 생성 안되는 문제

0

311

1