介绍
这篇文章主要介绍rpop方法怎么在python分布式爬虫中使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
下面的代码是消费端爬虫程序的示例
import 时间 import 复述, , , 时间=r redis.Redis(主机=& # 39;127.0.0.1 # 39;,,=6379港 ,,,,,,,,,,,,,,,密码=& # 39;yourpassword& # 39;,, db=1) , #,爬虫程序 def 爬行(任务): ,,,print(& # 39;爬取url {任务}& # 39;.format(任务=)) ,,,time . sleep (1) , , while 真正的: ,,,task =, r.rpop (& # 39; url_queue& # 39;) ,,,if not 任务: ,,,,,,,time . sleep (1) ,,,,,,,继续 , 爬(任务)
爬虫程序要不停的使用rpop方法从复述的队列中拉取数据进行爬取,考虑到生产者随时都可能写入新的任务,因此,必须使用死循环,得不到消息时,睡眠一段时间,继续获取消息。
关于部署
生产端的程序,消费端的程序可以随意部署,但不管如何,都要确保这些机器与复述所在的机器是网络连通的,因为他们一个要写消息到复述,一个要从复述,拉取任务,至于生产端和消费端是否网络连通则没有任何必要,甚至同一端的工人之间也不必网络连通
数据存储
消费端的工人在爬取数据以后,可以根据实际需要决定是否直接落库,如果需要对数据进行规范化处理或是其他操作,则可以写入新的消息队列中,由下一个工序的工人拉取数据进行处理
以上是“rpop方法怎么在python分布式爬虫中使用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!