인프런 커뮤니티 질문&답변

산마로님의 프로필 이미지

작성한 질문수

Node.js로 웹 크롤링하기

7-1. 페이스북 크롤링 준비

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

24.09.28 02:52 작성

·

36

0

안녕하세요..

프록시 사이트 (http://spys.one/free-proxy-list/KR/) 에 있는 프록시 사이트에 대한 정보를 가져와서, sqlite에 저장하는 코드로 테스트 하고 있습니다.

 

두가지 문제 현사잉 발생하고 있습니다.

  1. 관련 크롤러 함수를 실행했는데, puppeteer의 브라우저 화면이 안나나나지만, 프록시 사이트 정보를 클로링은 합니다. 현재 headless:false로 해서 브라우저를 기동시키고 있는데, 왜 이런 형상이 발생할 까요?

     

인터넷 정보를 서치하다 보니, 브라우저 실행시 '--no-sandbox'를 해보하고 해서 해봤더니, 페이지 보이기는 합니다. (이 옵션의 의미는 무엇인지 궁금합니다.)

  1. 강의 동영상에서 알려주신대로 크롤링 된 사이트에서 latency가 가장 작은 ip를 이용해서 브라우저 실행시 --proxy-server=fastestProxy 로 설정한 후 네이버 IP 확인 페이지를 호출했는데,


    Error: net::ERR_TIMED_OUT at https://search.naver.com/search.naver?where=nexearch&ssc=tab.nx.all&query=%EB%82%B4%EC%95%84%EC%9D%B4%ED%94%BC%EC%A3%BC%EC%86%8C&sm=tab_she&qdt=0

    가 발생하는데, 이는 네이버에서 Proxy서버에서 접근하는 것을 막아서 발생하는 것인가요? 프록시 서버를 사용하지 않고 브라우저를 생성하면, 정상적으로 접근되어서 제 IP 주소를 확인할 수 은 있습니다.
    강의 처럼 변경된 프록시 서버의 ip를 확인할 수 있는 방법이 무엇인지 알려주시면 좋겠습니다.

답변 2

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

2024. 09. 28. 02:57

https://whatismyipaddress.com/

퍼페티어로 접속해보시면 proxy 있을 때와 없을 때 ip가 다르게 뜰 것입니다.

--no-sandbox는 사실 크롬의 보안장치를 없앤다는 뜻입니다. 크롬은 웹사이트가 위험한 소스를 갖고 있을 수 있으니 sandbox 모드 안에서 먼저 열어본 다음에 위험한 컨텐츠가 있으면 차단합니다.

산마로님의 프로필 이미지
산마로
질문자

2024. 09. 30. 01:23

안녕하세요. 알려주신 사이트로 접속했습니다. --proxy-server 옵션을 사용안하면 접속 페이지에서 바로 제 ip 주소를 확인할 수 있었습니다.

그런데 프록시 서버 옵션을 사용하면

Error: net::ERR_TIMED_OUT at https://whatismyipaddress.com/
가 발생해서 변경된 ip를 확인할 수 없습니다... 무엇이 문제일까요?

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

2024. 09. 30. 10:41

그 프록시 서버가 안 되는 프록시 서버같은데요. 다른 프록시 서버를 써보세요

0

인프런 AI 인턴님의 프로필 이미지

2024. 09. 28. 02:56

안녕하세요, 인프런 AI 인턴입니다. 산마로님.

프록시 서버를 이용한 크롤링 시 여러 가지 문제가 발생할 수 있는데, 특히 접속 오류나 브라우저 화면이 나타나지 않는 문제는 흔합니다. 아래에 관련된 질문과 답변 링크를 참고해서 문제를 해결해 보시기 바랍니다.

  1. 프록시 서버 사용 시 브라우저 화면이 나타나지 않는 문제:

    • 이는 ‘–no-sandbox’ 옵션으로 해결할 수 있습니다. 이 옵션은 Puppeteer가 브라우저를 안전 모드로 실행하지 않도록 합니다. 보안상 이유로 기본적으로 브라우저는 샌드박스 모드로 실행됩니다. 하지만 이 옵션을 비활성화하면 일부 환경에서 브라우저가 제대로 동작하지 않을 수 있습니다.
    • 관련 질문: 인터넷 연결이 안돼요 선생님
    • 제로초 님이 프록시 주소가 실제로 동작하는지 체크해야 한다는 언급이 있습니다.
  2. 프록시 서버 접근 타임아웃 문제:

프록시 서버를 여러 번 시도해보고, 제대로 작동하는 서버를 찾아서 사용하는 것이 중요합니다. 또한, 사용 중인 프록시 서버가 인증 없이 사용할 수 있는지 확인이 필요합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.