现在可以从网上下载这些代码,怎么进行部署和运行代码
从github上下载了关于分布式的代码,不知道怎么用,求各位大神指点下。。。
下面是网址
https://github.com/rolando/scrapy-redis
环境已经按照上面的配置好了,但不知道如何实现分布式。
分布式我是这样理解的,有一个redis服务器,从一个网页上获取url种子,并将url种子放到redis服务器了,然后将这些url种子分配给其他机器。中间存在调度方面的问题,以及服务器和机器间的通信。
谢谢。。。
PHP中文网2017-04-24 09:13:57
한두 문장으로 명확하게 설명할 수는 없는 것 같아요.
이전에 언급한 블로그 게시물이 여러분에게 도움이 되기를 바랍니다.
개인적인 이해에 대해 말씀드리겠습니다.
scrapy
은 개선된 python
고유의 collection.deque
을 사용하여 크롤링할 request
을 저장합니다. 어떻게 두 명 이상의 Spider
이 deque
을 공유할 수 있나요?
크롤링할 대기열은 공유할 수 없으며 배포도 말도 안 됩니다. scrapy-redis
이 솔루션을 제공하고, collection.deque
을 redis
데이터베이스로 대체하고, 여러 크롤러가 동일한 redis
서버에서 크롤링할 request
을 저장하므로 여러 spider
가 동일한 Read in으로 이동할 수 있습니다. 데이터베이스화하여 유통의 주요 문제를 해결합니다.
참고: 는 redis
을 request
스토어로 대체하지 않으며, scrapy
는
scrapy
은 待爬队列
와 직접적으로 관련된 스케줄러 Scheduler
입니다.
scrapy
새 request
를 대기열에 추가하고 크롤링할 다음 request
을 꺼내는 등의 작업을 담당합니다. 따라서 redis를 교체한 후에는 다른 구성 요소도 변경해야 합니다.
그래서 제가 개인적으로 이해한 바는 동일한 크롤러를 여러 시스템에 배포하는 것이 상대적으로 간단하다는 것입니다. 분산 배포 redis
, 참조 주소
내 블로그입니다. 그리고 URL 중복 제거를 포함한 이러한 작업은 이미 작성된 scrapy-redis
프레임워크의 기능입니다.
참조 주소는 여기에서 예시를 다운로드하여 구체적인 구현을 확인할 수 있습니다. 저는 최근 scrapy-redis
에도 이 작업을 진행하고 있으며, 배포한 후 이 답변을 업데이트하겠습니다.
새로운 진행사항이 있으면 공유하고 소통할 수 있습니다.
黄舟2017-04-24 09:13:57
@伟兴 안녕하세요 11.10.15에 이 댓글을 봤는데 지금 결과가 나오나요?
당신의 블로그를 추천해주실 수 있나요? 감사합니다~
chenjian158978@gmail.com으로 연락주세요