아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
예리한집게벌레133
예리한집게벌레13319.02.11

node.js HTML파싱하는데 EAI_AGAIN오류가 뭔가요ㅠㅠ?

저 node.js에서 request require해서 request함수 호출해서 html파싱할라구 했는데 방금까지만 해도 잘만되던게 갑자기 오류를 뿜네요ㅠ 왜이러는지좀 봐주실 수 있을까요..ㅠㅠ

EAI_AGAIN이 무슨 오류인지 검색해보니까.. 시간초과..?그런거같던데 직접 접속하면 잘만되고 아까전까진 잘 되던게 갑자기 왜이러는지...ㅠㅠ

저기 가려진 부분은 파싱할려고 한 페이지 주소입니다...!

node.js...비동기도 익숙하지 않고 진짜 여러모로 헷갈려죽겄네요ㅠ

55글자 더 채워주세요.
답변의 개수
1개의 답변이 있어요!
  • 안녕하세요 어구리님,

    Nodejs 에서 EAI_AGAIN 에러는 DNS lookup 에러입니다.

    따라서 해당 내용은 코드 자체에 있는 에러라고 하기 보다는 네트워크 연결쪽에서 해당 주소의 정보를 긁어오지 못해서 발생하는 에러인것 같습니다.

    방금전까지만 해도 잘 되던 것이 지금 안된다고 하면 해당 서버에서 크롤링 방지를 위해서 ua 등의 정보가 없는 류의 접속을 방금 차단한것 같습니다.

    브라우저에서는 접속이 잘 되는데 코드상으로는 접속이 불가능하다고 한다면 아마 서버쪽에서 그런 설정을 해놓지 않았을까 생각해 봅니다.

    만약 크롤링을 꼭 진행하셔야 한다고 하시면 puppeteer 혹은 selenium 을 사용하셔서 진행해보시면 될 것 같습니다^^

    혹시 몰라 아래에 두개의 모듈에 대한 링크 남겨드립니다.

    퍼페티어 : https://github.com/GoogleChrome/puppeteer

    셀레늄 : https://www.seleniumhq.org/