请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

如何优雅的结束爬虫呢?

现在爬虫没有结束的机制,怎样才能知道没有要爬取的内容了然后优雅的结束爬虫呢?我能想到的就是设置一个超时时间,这个时间之外如果没有新的request从channel中传过来,就结束engine。但是有没有更好一些的办法呢。

正在回答 回答被采纳积分+3

插入代码

1回答

ccmouse 2018-09-01 09:09:52

或者我们也可以再加上一个条件,就是一段时间里没有request并且scheduler里面队列为空。不过这需要改一下scheduler接口。我们让scheduler来判断是否要退出,然后把这个信息通过一个channel送出去。

另外我们还可以通过捕获ctrl+c来更加优雅的处理一些退出前要做的事。这篇文章介绍了如何捕获ctrl+c https://studygolang.com/articles/6869

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号