찾다

 >  Q&A  >  본문

python - 爬虫在运行一段时间后开始不断获得504的StatusCode,是否是对方站点的反爬虫策略导致?有何回避策略?

最近初学用Python写网页爬虫视图扒取一个站点上的特定数据。

最近碰到的一个现象是,当爬虫运行了一段时间后(根据Fiddler抓包的结果来看,大概是发送了将近3万个http请求后),爬虫的获取的http响应的StatusCode骤然都变成了 504, 之后就再也获取不到200的响应了。

想请教一下各位大神,这种现象是否是由于扒取对象的站点的反爬虫策略造成的?

如果是的话,有什么常用的回避策略么?

P.S.
还注意到一个现象,不知与上述现象是否有关,一并描述:
即当爬虫的响应变成504之后,发现我的浏览器的代理选项被自动勾上了,如下所示:

巴扎黑巴扎黑2839일 전1065

모든 응답(6)나는 대답할 것이다

  • PHP中文网

    PHP中文网2017-04-17 17:27:54

    프록시 옵션이 체크되어 있는데, 이는 fiddler로 인해 발생합니다. 예전에는 fiddler를 사용해 패킷을 캡처하는 경우가 많았는데, 일정 시간이 지난 후 프록시 옵션을 선택 해제하면 문제가 해결되었습니다.

    회신하다
    0
  • ringa_lee

    ringa_lee2017-04-17 17:27:54

    제가 작성한 오픈소스 컴포넌트에 주목하시면 크롤러 방지 전략 차단을 방지하기 위한 프록시 서버 풀 설정, 요청 빈도 자동 조정, 비정상적인 요청 처리, 응답이 빠른 에이전트에 우선 순위 부여 등을 참고하실 수 있습니다. . https://github.com/letcheng/ProxyPool

    회신하다
    0
  • PHP中文网

    PHP中文网2017-04-17 17:27:54

    1.에이전트

    2. 완전한 요청 시뮬레이션

    3. 합리적인 간격

    4.adsl 연결 끊김 및 재다이얼

    회신하다
    0
  • PHPz

    PHPz2017-04-17 17:27:54

    방법:
    IP를 변경하고 프록시 IP를 사용하세요. 온라인에는 무료와 유료가 많이 있습니다.
    무료 IP: http://www.uuip.net/
    유료 IP: http:/ /www.daili666.net/

    회신하다
    0
  • 迷茫

    迷茫2017-04-17 17:27:54

    프록시를 통해 접속해 보세요

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-17 17:27:54

    이 질문에 대한 답은 왜 이렇습니까? 50x 오류는 웹사이트 자체에 있습니다

    회신하다
    0
  • 취소회신하다