-2

我正在编写一个脚本来计算网络上的单词分布(基本上是单词的出现)

我所做的是生成搜索引擎的随机页面,从它们的站点中提取链接并计算单词。

我使用的是谷歌,但验证码阻止了我的请求,现在我使用的是 bing 一切正常,但有一个奇怪的问题

在某个时刻,在我扫描了 100 到 300 页之后,我的程序完全阻止了无所事事

我检查了 ps x 并且有一个实用程序 w3m 的进程正在尝试下载某些东西,但这就像空闲

如果我终止该进程,那么我的脚本将继续运行而不会出现任何问题,就像什么都没发生一样......

会是什么呢?我写的一些错误代码,阻止了太多的请求?

我在想一个非常不雅的解决方案

基本上,如果它的空闲时间超过 5 秒左右,我可以终止该进程,你怎么看,怎么做?恐怕我的整个程序会在那时阻塞,所以我需要一个外部脚本来检查正在运行的进程并在它们阻塞时杀死 w3m 进程

非常感谢您的时间。非常感谢

4

2 回答 2

1

看起来有些页面已经消失或远程服务器没有响应并且 w3m 挂在它上面等待超时超过。顺便说一句,w3m在脚本中使用这很不寻常。通常curlwget用于该目的。

例如,wget可以--timeout=选择避免此类问题。

快速谷歌搜索后,我发现w3m. 希望你比我幸运一点。

于 2012-08-08T13:35:56.613 回答
0

在我扫描了 100 到 300 页之后

您可能会超过搜索提供商为防止重复抓取而设置的某些阈值。如果搜索提供商猜测您是一个松散的机器人,他们可能会在短时间内限制您的搜索结果。

于 2012-08-08T16:41:42.027 回答