我正在尝试用shell脚本自动翻译网页。下面是有趣的部分:
wget http://www.google.com/translate?langpair=en%7Ces&u=http%3A%2F%2Fasdf.com虽然我可以在浏览器中使用这个URL获得翻译,但我还是得到了“错误403:禁忌”。有人能解释一下发生了什么事吗?为什么google禁止shell脚本中的“翻译器”使用?他们是否监视用户代理,或者他们有另一种方法来判断你是否是浏览器?
如果有人知道另一种方法(例如,如果有一个控制台、非交互式浏览器来获取该URL,或者,也许还有另一个我不知道的在线翻译工具),请告诉我。
发布于 2011-05-03 22:37:46
是的,他们检查用户代理。向wget添加-U选项,如下所示:
wget -U "Mozilla/5.0" 'http://www.google.com/translate?langpair=en%7Ces&u=http%3A%2F%2Fasdf.com'我在我的机器上进行了测试,我得到了页面。
更新:确保在url (我使用单引号)周围放置引号,因为&分隔符在它之前的所有内容都是背景,其余的被解释为一个单独的命令。
https://serverfault.com/questions/265999
复制相似问题