Golang缓存HTTP在内存中获取结果
我正在使用Go中的CLI,它可以将网页上所有链接的href属性收集到一个片段中。我想在内存中存储这个片段一段时间,这样就不会在每次执行CLI命令时调用scraper。理想情况下,只有在缓存过期或用户提供某种Golang缓存HTTP在内存中获取结果,go,caching,web-scraping,Go,Caching,Web Scraping,我正在使用Go中的CLI,它可以将网页上所有链接的href属性收集到一个片段中。我想在内存中存储这个片段一段时间,这样就不会在每次执行CLI命令时调用scraper。理想情况下,只有在缓存过期或用户提供某种--update标志后,才会调用scraper 我偶然发现了这个库和其他类似的库,但从我所知道的,它们只适用于持续运行的东西,比如服务器 我曾想过将链接写入一个文件,但在一段特定的时间后,我将如何使结果过期?在后台创建一个小型服务器,在一段时间后关闭,以便使用像go cache这样的库,这样做
--update
标志后,才会调用scraper
我偶然发现了这个库和其他类似的库,但从我所知道的,它们只适用于持续运行的东西,比如服务器
我曾想过将链接写入一个文件,但在一段特定的时间后,我将如何使结果过期?在后台创建一个小型服务器,在一段时间后关闭,以便使用像
go cache
这样的库,这样做有意义吗?感谢您的帮助。使用数据库并尽可能多地存储详细信息(获取地址、主机、路径、标题、元数据描述、锚定等)。稍后您将能够查询数据,以结构化格式进行查询将非常有用。如果不想处理db依赖关系,可以嵌入类似于boltdb(纯go)或sqlite(cgo)的内容 在这些场景中有两种主要方法:
此类开放式问题的范围和示例数量太多,无法在一个答案中发布,很可能需要多个具体问题。谢谢您的建议!对于这样一个小的CLI,我觉得使用数据库或服务器太过分了。我只是刮一个网页,有谢谢!我得看看boltdb。