Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在 Clojure 中制作应用程序,并且正在使用它的爬虫来爬取特定站点。
现在我想知道是否可以运行它的爬虫一段时间,然后停止整个应用程序,但是当我再次启动应用程序以跳过已经访问过的网址时?
从源码来看,它们并没有提供内置机制来保存爬虫的当前状态。但是,爬虫的当前状态可以在crawl函数的结果中访问,在:state键下。
crawl
:state
您可以在退出应用程序时序列化:seen-urlsatom 和队列中的值,然后在再次启动时反序列化它们。:queued-urls看起来您必须在运行该crawl函数后添加保存的值,以确保一切都正确初始化。
:seen-urls
:queued-urls