inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Node.js로 웹 크롤링하기

2-3. 첫 puppeteer 크롤링

csv-parse 관련해서 질문드립니다.

302

Simple

작성한 질문수 3

0

안녕하세요. 

이전 강의 중에, csv-parse 부분에서 csv-parse/dist/cjs/sync.cjs 를 사용하라고 얘기해주셨는데요.

npm start 를 하면 const records = parse(csv.toString('utf-8')); 부분에서 에러가 발생하더라고요. 관련해서 csv-parse/dist/cjs/sync.cjs 를 인터넷에 찾아봤는데 나오는게 없습니다.. ㅠ

해당 부분은 어떻게 처리하면 될지 알 수 있을까요?

 

 

SourceCode

const parse = require("csv-parse/dist/cjs/sync.cjs");
const fs = require('fs');
const puppeteer = require('puppeteer');

const csv = fs.readFileSync('csv/data.csv');
const records = parse(csv.toString('utf-8'));

const crawler = async () => {
try {
const browser = await puppeteer.launch( {headless: false} );
await Promise.all(records.map(async (r, i) => {
try {
const page = await browser.newPage();
await page.goto(r[1]);
const scoreE1 = await page.$('.score.score_left .start_score');
if (scoreE1) {
const text = await page.evaluate(tag => tag.textContext, scoreE1);
console.log(text);
}
} catch (e) {
console.error(e);
}
}));
await browser.close();
} catch (e) {
console.error(e);
}



};

crawler();

 

 

 

StackTrace

const records = parse(csv.toString('utf-8'));

                ^

TypeError: parse is not a function

javascript 웹-크롤링 nodejs puppeteer

답변 1

0

제로초(조현영)

const { parse } = require(...) 입니다.

0

Simple

잘되네요. 감사합니다.

headless 궁금한게 있어요!

0

487

2

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

0

352

2

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

0

291

2

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

0

282

2

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

0

263

3

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

0

305

3

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

0

157

1

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

0

172

1

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

0

563

1

puppeteer 관련

0

606

2

6-3 proxy-database 관련

1

291

1

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

0

800

1

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

1

495

1

아래 noscript 내용입니다.

0

531

1

크롤링

0

381

1

앱 크롤링

0

1788

1

페이스북 로그인

0

547

1

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

1

465

1

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

0

451

2

대량 요청 처리 방법

0

470

1

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

0

256

1

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

0

372

2

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

0

306

1

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

0

317

1