55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결Node.js로 웹 크롤링하기
mocha puppeteer 사용시 질문
삭제된 글입니다
- 미해결Node.js로 웹 크롤링하기
evaluate 안의 두번째, 세번째 인자
안녕하세요. zerocho님 초보자가 강의를 따라가면서 가질 수 있는 의문들을 꼼꼼히 짚어주시고 실무에서 적용되는 예시들을 많이 알려주셔서 정말 유익하게 강의를 잘 듣고 있습니다. <질문1> 자바스크립트에서 콜백함수 하나만을 인자로 받고 이후 인자들은 사용하지 않는 함수들의 경우, evaluate처럼 두번째, 세번째 인자들을 통해서 콜백에 인자를 전달해줄 수 있나요? <질문2> process.env.EMAIL을 crawler 함수 내부가 아닌 evaluate 함수 안에서 직접 적용했을 때에는 process is not defined 에러가 발생합니다. process.env가 작동하는 스코프가 전역으로 알고 있는데 evaluate 콜백 안에서는 작동하지 않는 이유가 있나요? 기본적인 질문인 것 같아 죄송합니다..
- 미해결Node.js로 웹 크롤링하기
get 요청 이후에 받아온 정보에서
안녕하세요. zerocho님 초보자가 강의를 따라가면서 가질 수 있는 의문들을 꼼꼼히 짚어주시고 실무에서 적용되는 예시들을 많이 알려주셔서 정말 유익하게 강의를 잘 듣고 있습니다. <질문> get 요청 받아온 정보에서 이미지만 추출할 때 .data는 늘 사용되는 컨벤션인가요? (본 강의에서는 imgResult.data) 아니면 크롤링하는 사이트마다 원하는 정보가 어떤 변수에 담겨있는지 체크해야하나요?
- 미해결Node.js로 웹 크롤링하기
setTimeout 대신 page.waitForTimeout
안녕하세요. zerocho님 초보자가 강의를 따라가면서 가질 수 있는 의문들을 꼼꼼히 짚어주시고 실무에서 적용되는 예시들을 많이 알려주셔서 정말 유익하게 강의를 잘 듣고 있습니다. 페이지 스크롤 시에 setTimeout 대신 pate.waitForTimeout으로 시간차를 둬보려 했는데요. page is not defined 에러가 나서 문의드립니다. page가 상위스코프인 crawler함수 본문 안에 정의되어있어서 하위스코프인 evaluate 안에서도 사용가능할거라 생각했는데요. 혹시 page.evaluate처럼 page 안의 메소드에서 사용할때는 스코프 개념과 관계없이 이미 해당 값의 메소드 안에 있기 때문에 사용이 안되는건가요?
- 미해결Node.js로 웹 크롤링하기
도저히 모르겠어서, 여기다 올리네요ㅜ
안녕하세요. 크롤링 강의를 수강하는 사람입니다. 강의를 바탕으로 개인 프로젝트를 하고 있는데, 도저히 진행이 안되서 여기다 질문드립니다.. 강의랑 상관없는 내용일 수 있어서 곤란하시면 답변을 안주셔도 상관없습니다..ㅠ --지금 상황-- 1. 크롤링 프로젝트를 만들고, 헤로쿠에서 기동하고 있습니다. 2. 파일 업로드 소스에서 문제가 발생합니다. 3. 로컬에서 기동할 때에는 잘 되는데, heroku에서는 파일 업로드가 잘 안됩니다. 4. 파일 업로드 소스부분입니다. imagePathArray = fs.readdirSync(path.join(__dirname, '../tempSave'), function(error, fileList){ if(error)return console.log("error",error); return fileList; }) imagePathArray = imagePathArray.map((v) => { return path.join(__dirname, `../tempSave/${v}`); }); const[fileChooser] = await Promise.all([ page.waitForFileChooser(), page.click('.bmm-c-field__input .bmm-c-img-upload__dropzone'), ]) console.log("imagePathArray 확인", imagePathArray); await fileChooser.accept(imagePathArray); await page.waitForTimeout(20000); 헤로쿠에서 위의 소스의 imagePathArray에 path값이 들어오는 것은 확인 했습니다. 문제는 Promise.all인것 같은데, 이부분이 로컬에서는 잘되는데 헤로쿠에서는 잘 안되는 것같습니다. 혹시 사용법이 잘못되었을까요..? 뭔가 아시는분이 있으면 답변 부탁드립니다ㅜ
- 미해결Node.js로 웹 크롤링하기
2장 useragent를 이용하여 한탭으로 크롤링
안녕하세요! 혹시 강의 예제 진행하던 중 다른 웹페이지로 접속되는 현상이 발생되어 질문드립니다. 강의에서 처럼 콘솔로 확인한 저의 useragent를 복붙하여 한탭에서 영화평점을 크롤링하도록 하였는데 앞선 예제들과는 달리 밑 사진 웹페이지로 접속하게됩니다. csv파일도 이전과 동일한 csv파일을 이용하였는데 무엇이 문제인가요?
- Node.js로 웹 크롤링하기
개발환경과 배포환경 차이
삭제된 글입니다
- 미해결Node.js로 웹 크롤링하기
facebook 로그인 자동화에서 질문 있습니다
강의 내용과 달리 검은 화면이 아닌 흰 화면으로 덮이는데요 강의 내용처럼 esc로 나가지지 않고 화면 아무데나 클릭하면 나가집니다. 그런데 아무데나 클릭하는 법을 몰라서 page.click() 함수로 아무 div나 잡아서 클릭하게 했는데 나가지지가 않습니다 어떻게 해야 될까요 추가로 흰 화면이 떠 있는 동안 개발자 도구를 켜서 클릭해보니 사진과 같은 div가 선택되었는데 저 div를 클릭하게 해도 나가지지 않습니다. //////// 수정 ///////// 제가 브라우저 콘솔에서 아래와 같은 명령을 실행하면 흰 화면이 없어지는데요 document.querySelector('.iqfcb0g7 button').click(); index.js파일에서 아래와 같은 코드를 삽입한 후 작동시키면 await page.evaluate(()=>{ document.querySelector('.iqfcb0g7 button').click(); }) 흰 화면이 없어지지 않습니다. 어떻게 해야 될까요... 에러 코드는 아래와 같습니다. Evaluation failed: TypeError: Cannot read property 'click' of null
- 미해결Node.js로 웹 크롤링하기
skt api로 받은 데이터를 DB에 저장하고 싶습니다.
안녕하세요. skt에서 제공하는 api로 데이터를 받아서 원하는 데이터를 콘솔로그까지 뿌려보는 작업까지는 성공했습니다. const getData = async() => { try { const response = await axios(config); console.log(response.data['cin']['con']); } catch (error) { console.log('최근 데이터가 없습니다.'); } } 이 코드에서 response.data 저장된 값을 sequelize로 만들어진 mysql DB 테이블에 원하는 값만 저장하고 싶은데 예시로 짜본 코드는 다음과 같습니다. const saveData = async()=>{ try { const response = await axios(config); await db.db_test.create({ creator : response.data['cin']['cr'], location : response.data['cin']['ppt']['devl'], creat_time : response.data['cin']['ct'], lastest_time : response.data['cin']['lt'], expire_time: response.data['cin']['et'], contain_data : response.data['cin']['con'] }).then(resolved,rejected); } catch (error) { console.log(error); } } saveData(); 코드를 실행하면 테이블 만들어지는 화면만 나오고 데이터가 Db에 저장이 안됩니다. DB 싱크는 해놓은 상태입니다. 참고로 response.data['cin']에 들어가 있는 데이터는 다음과 같이 저장이 됩니다.
- 미해결Node.js로 웹 크롤링하기
쿠팡 크롤링
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다. 안녕하세요! 쿠팡의 경우 puppeteer로 될 때도 있고 안 될 때도 있던 것 같더라구요. 아마 블로그에서 언급하신 rate-limit에 걸린 것 같기도 한데, 혹시 우회법을 찾으셨을까요? 혹은 rate-limit에 걸리지 않으려면 어느 시점에 딜레이를 주거나 하면 좋을까요? 감사합니다.
- 미해결Node.js로 웹 크롤링하기
로그인 팝업창 질문드립니다.
이러한 팝업 태그창에 input은 어떻게 해야하는지 궁금합니다. 개발자 도구의 network에도 단순히 unAthorized라고 뜰뿐 팝업창의 단서를 찾을 수 없었습니다. 해결 할 수 있는 방법이 있을까요?
- 미해결Node.js로 웹 크롤링하기
크롤링을하는데 빈값이 들어옵니다.
안녕하세요 지금 학교 웹사이트를 크롤링하는 중인데, 어찌 저찌 원하는 페이지까지 찾아서 태그까지 정확하게 찾은 것 같습니다. 그런데 해당 태그를 긁어오면 빈배열만 들어옵니다. 어떤 문제인지 궁금합니다.
- 해결됨Node.js로 웹 크롤링하기
크롤링한 내용을 html에 뿌리고 싶습니다
서버방식으로 동작하는게 아니라 js처럼 함수를 호출해서 크롤링하고싶은데ㅠ 불가능할까요
- 해결됨Node.js로 웹 크롤링하기
인코딩문제
제로초님과 똑같이 코딩했는데 한글이 깨져서 나옵니당..
- 미해결Node.js로 웹 크롤링하기
app.use() 문법에서 next메서드 사용 질문드립니다.
nodejs 유료강의중에 올라왔던 부분입니다. express 사용법 부분이요.! app.use()를 사용하여 어떤 라우트 요청이 들어와도 무조건 실행하고 싶은 코드를 최상단에 use 메서드를 사용해서 처리할 수 있다고 하셨었는데, 그러면서 동시에 next() 함수를 인자로 받아와서 작성해줘야지만 아래 코드가 순차적으로 실행된다고 배웠습니다. 그런데 뒤에 강의를 듣다보니 아래와같이 코드 최상단에 이렇게 작성하셨는데 next()함수 없이도 이렇게 작성하여도 아래 코드가 실행됩니다. next() 함수를 사용해야되는때가 미들웨어를 설정해주었을때만 그러니까 콜백함수라고 해야되나요? 정확한 명칭은 미들웨어라고 아는데 (req, res, next) => { } 이러한 미들웨어를 작성했을때만 next() 함수를 사용해주면 되는것인가요? 그리고 한가지 더 궁금한점이 있습니다. app.get('./user', (req, res, next)=>{ }) 이부분의 코드를 라우터라고 부르는게 맞을까요? 아니면 미들웨어라고 칭하는게 맞는것인가요? 좋은강의 해주셔서 매번 감사드립니다.
- 미해결Node.js로 웹 크롤링하기
배포하는 방법이 궁금합니다.
안녕하세요. 이제부터 강의를 듣고 있는데요. 나중에 나오는 강의중에 aws나 netliy등에 올려서 자동화 하는 것도 배울 수 있나요? 만약에 강의 내용중에 없다면, 어디에 배포하는 것이 좋나요? 되도록 쉽게 할 수 있는 곳을 추천해주시면 감사하겠습니다ㅜㅜ
- 미해결Node.js로 웹 크롤링하기
무한 스크롤을 할 때, 새로운 내용이 없을 경우 중단하는 방법이 궁금합니다.
회사에서 사용하는 카카오톡 채널(구 옐로 페이지)의 대화 목록을 크롤링해서 자체 DB로 옮기는 작업을 하고 있는데요, 대화 목록이나 대화 내용을 크롤링 할 때 새로운 내용이 나올 때까지만 자동 스크롤 해서 대화 내용을 받으려고 합니다. 더 이상 스크롤 되지 않을 때까지 스크롤 하는 방법이 있을까요?
- Node.js로 웹 크롤링하기
node.js 싱글코어
삭제된 글입니다
- 해결됨Node.js로 웹 크롤링하기
puppeteer 는 GUI 환경에서만 실행할수있나요?
headless = true 라면 일반 커멘드라인 리눅스환경에서도 작동이 될까요? 클라우드환경에서 작동시키고 싶어서요
- 미해결Node.js로 웹 크롤링하기
js 동기처리에 대해 질문드립니다(2)
여전히 같은 문제가 발생하여 다시 질문합니다 말씀해주신대로 'end' 이벤트 부분에서 resolve를 해주었지만 실제로 then 부분에서 promise가 resolve되지 않는것 같습니다... 정말 죄송한데 코드 한번만 확인해주실수 있나요??ㅠㅠ.. 실제로 resolve하는 부분은 ./js/index.js 파일에 있고, promise 함수는 ./js/downloader.js 파일에 있습니다 (retry 함수는 에러가 발생했을 때, 30번 까지 다시 시도해주는 함수입니다. 이부분 역시 promise로 만들었습니다)