这是我的代码:
function myFunction() {
var test = DocumentApp.openById('someid');
test.clear();
var html = UrlFetchApp.fetch('https://www.crunchbase.com/organization/google').getContentText();
test.appendParagraph(html);
}
请求失败 https://www.crunchbase.com/organization/google返回了代码 416.截断的服务器
如何解决这个问题?当我将网站设置为www.google.com
时,它可以正常工作,但在设置为https://www.crunchbase.com/organization/google
时失败。
答案 0 :(得分:1)
那是因为crunchbase.com不允许机器人抓取他们的网站。
要避免脚本中的错误,您需要将muteHttpExceptions
参数添加到您的urlfetch请求中:
var params = {muteHttpExceptions:true};
var response = UrlFetchApp.fetch('https://www.crunchbase.com/organization/google',params);
var html = response.getContentText();
test.appendParagraph(html);
然后你就能看到回复:
原谅我们的中断
原谅我们的中断......
正如您正在浏览 http://www.crunchbase.com 一些关于您的内容 浏览器让我们认为你是一个机器人。这有几个原因 可能发生:
- 您是超级人力的移动本网站的超级用户。
- 您已在网络浏览器中停用了JavaScript。
- 第三方浏览器插件(如Ghostery或NoScript)阻止JavaScript运行。额外 有关这方面的信息,请访问http://ds.tl/help-third-party-plugins' target ='_ blank'>支持文章。
要请求取消屏蔽,请填写下面的表单,我们会尽快审核。
<form id="zwxrztubr" method="POST" action="rytxecbxwsecazdrftrytxe.html"
style =“display:none”&gt;忽略:忽略:忽略: 名字 姓 电子邮件 市
<小时/> 请求取消阻止 您尝试从107.178.192.142开始访问http://www.crunchbase.com/organization/google时到达此页面 2016-08-31 07:38:18 GMT。
追踪:E2A843FA-6F4D-11E6-B2D7-9FC6DA1DE14E来自c17ee8fd-4346-4832-a021-e5f8124f2861