php小编草莓今天为大家介绍一种方法,可以帮助我们在使用go colly爬虫框架时,忽略打印达到最大深度限制的问题。在爬取网页数据的过程中,我们通常会遇到结构嵌套较深的情况,而colly框架默认的打印深度限制可能无法完整展示所有数据。通过对colly框架的调试选项进行设置,我们可以轻松解决这个问题,获得更全面的数据展示。接下来,让我们一起来了解具体的操作步骤吧!
我有一个 go colly 爬虫,我正在尝试爬行许多网站。在我的终端上它打印了很多:
2023/05/30 02:22:56 Max depth limit reached 2023/05/30 02:22:56 Max depth limit reached 2023/05/30 02:22:56 Max depth limit reached 2023/05/30 02:22:56 Max depth limit reached 2023/05/30 02:22:56 Max depth limit reached 2023/05/30 02:22:56 Max depth limit reached 2023/05/30 02:22:56 Max depth limit reached
这让我很难阅读我放置的一些印刷品。我想知道是否有任何方法可以忽略在终端中打印此内容。谢谢
达到最大深度限制
为colly.errmaxdepth。你的项目中必须有这样的代码:
c := colly.newcollector(colly.maxdepth(5)) // ... if err := c.visit("http://go-colly.org/"); err != nil { log.println(err) }
如果您不想记录此错误,请添加一个简单的检查来排除它:
c := colly.newcollector(colly.maxdepth(5)) // ... if err := c.visit("http://go-colly.org/"); err != nil { // log the error only when the error is not errmaxdepth. if err != colly.errmaxdepth { log.println(err) } }
另一个选项是将输出重定向到文件:
go run . 2>&1 >log.txt
或者使用 tee
将输出复制到文件并复制到标准输出:
go run . 2>&1 | tee log.txt
以上是如何忽略打印达到最大深度限制 go colly的详细内容。更多信息请关注PHP中文网其他相关文章!