본문 바로가기
반응형

개발/Express4

Express 로 뉴스 크롤링하기 Express 로 뉴스 크롤링하기 보통은 크롤링은 파이썬으로 많이 하지만, 나는 당장 개발 가능한 코드가 js뿐이라 express로 크롤링을 하였다. 발단 요새 계속 칼부림이 일어나고 있다. 동료A : '칼부림 알람이라도 만들어야겠어요' 동료B : 'ㅋㅋㅋㅋㅋㅋ뉴스 크롤링해서 만들면 되겠네요' 퇴근길 지하철에서 express로 뉴스 크롤링하는 법을 검색했다. 집에와서 chatGPT의 도움을 받아 코드를 작성했다. 코드 구글에 '칼부림' 검색한 후 '뉴스'로 필터링해서 특정 a태그만 찾아오는 코드이다. // news/index.js //chatGPT4가 구글 검색 결과는 axios보다 Puppeteer를 이용하라고 했다. const puppeteer = require('puppeteer'); const n.. 2023. 8. 4.
express middleware Middleware는 익스프레스 장점중 하나이다. 이름처럼 미들웨어는 요청에 대한 응답 과정 중간에 껴서 어떠한 동작을 해주는 장치이다. 익스프레스는 요청에 따른 응답을 프론트엔드에 보내주는데, 응답을 보내기 전(혹은 후)에 미들웨어가 지정한 동작을 수행한다. 다음 코드를 보자. use import * as express from "express"; import { Cat, CatType } from "./app.model"; const app: express.Express = express(); const port = 8000; //순서가 중요하다.만약 res.send보다 뒤에있다면 미들웨어는 실행되지 않을 것 //use는 전체관리용으로 사용하기 위함 app.use((req, res, next) => .. 2022. 6. 6.
Express : res.end() res.send() res.json() 차이 res.end() response 과정을 빠르게 끝낸다. 데이터 처리 없이 빠르게 response를 끝낼때 사용한다. 만약 data 처리가 필요하다면 res.send()나 res.json()을 사용하자 res.send() HTTP response 를 보낸다. 파라미터로 Buffer object, String, object, Boolean, Array 등이 사용된다. (Buffer는 Node.js에서 제공하는 Object인데 Binary데이터를 담는 역할을 한다. 자세히 알고 싶다면 클릭) 서버에서 response 처리를 할 때는 Content-Type을 지정해주어야 하는데, res.send()는 매개변수마다 알맞는 Content-Type을 지정해준다. 매개변수 Content-type Buffer Obje.. 2021. 9. 11.
에러 해결 : 'body-parser' 취소선, The declaration was makred as deprecated here bodyParser 는 더이상 사용되지 않습니다 이 에러에 대해 이야기하기 전에 먼저 body-parser의 역할에 대해 알아보자. body-parser req.body의 디폴트 값은 undefined이다. app.post('/upper', function (req, res) { // req.body에는 JSON의 형태로 payload가 담겨져 있습니다. console.log(req.body) }) 위의 코드를 살펴보면 req.body에 어떤걸 입력하던 그대로 콘솔로그가 찍힐 것 같다. 실험해보자. postman으로 body에 "hi" 를 입력하고 post해보자. body에 "hi"를 입력해도, 콘솔로그에 undefined가 찍힌다. 앞서 말했듯이, req.body의 디폴트값은 undefined이기 때문.. 2021. 9. 10.
반응형