>  Q&A  >  본문

Python - 2억개 이상의 URL이 있는 웹페이지의 상태 코드를 빠르게 확인하는 방법은 무엇입니까?

리퀘스트를 이용하여 멀티스레드를 작성했는데 조금 느린 느낌이 드네요. 다른 방법은 없나요?

世界只因有你世界只因有你2712일 전578

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

  • PHPz

    PHPz2017-05-18 10:58:14

    Tornado의 컬 클라이언트 지원을 사용하고 요청 헤더를 읽은 후 연결을 닫습니다. (아직 시도해보지 않았습니다. 제공되는 HTTP 클라이언트가 연결 도중에 연결 종료를 지원하지 않는 경우 저처럼 TCP를 사용한 다음 http-parser를 사용하여 구문 분석할 수 있습니다.)

    사실, fetchtitle에 확장을 추가하면 상태 코드를 얻을 수 있습니다... (pycurl을 설치하는 것을 잊지 마세요)

    회신하다
    0
  • 巴扎黑

    巴扎黑2017-05-18 10:58:14

    Python은 본질적으로 느립니다. 속도를 높이려면 tcp 요청을 직접 작성한 다음 응답을 읽으세요. 상태를 읽은 후 소켓을 닫으세요.

    회신하다
    0
  • ringa_lee

    ringa_lee2017-05-18 10:58:14

    요청을 사용하면 요청이 동시에 캡슐화됩니다

    https://github.com/kennethrei...

    회신하다
    0
  • 迷茫

    迷茫2017-05-18 10:58:14

    이 경우 gevent, tornado, scrapy-redis, asyncio 사용을 고려해 볼 수 있습니다!

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-05-18 10:58:14

    Head를 사용하여 요청하면 더 빨라질 수 있나요?

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