【问题标题】:Accessing google docs spreadsheet revisited in 2014访问 2014 年重新访问的谷歌文档电子表格
【发布时间】:2014-05-14 05:02:56
【问题描述】:

我正在尝试通过 php 访问 google 电子表格(通过在链接中添加 &output=csv)似乎 google 不再需要这个,这是正确的吗?我尝试了file_get_contents(是的,allow_url_fopen 已打开),导致错误。使用 CURL 时,即使设置了有效的用户代理(我使用了 Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13),我也会收到文件已临时移动的通知。我使用的链接适用于从浏览器访问电子表格。我尝试在谷歌文档中将电子表格设置为公开,但无济于事。

建议的解决方案 hereherehere 似乎不再起作用。如果谷歌不希望我这样做,我不会继续尝试,但我没有找到任何支持它的东西。在某些页面的 cmets 中,我读到了一些关于 gData ZendFramework 的内容,但想避免任何未部署到标准 LAMP 服务器的内容。

PS:我并不是想通过窃取他们的带宽来滥用谷歌。我为 csv 文件编写了一个转换脚本,除了文件上传以进行转换之外,我还希望与 google docs 链接集成。

【问题讨论】:

  • 电子表格是否可以公开访问?如果没有,您需要提供身份验证 cookie。此外,当使用curl 时,请使用CURLOPT_FOLLOWLOCATION 选项来跟踪重定向。
  • 电子表格可以公开访问,当我设置CURLOPT_FOLLOWLOCATION 时,我会被重定向到谷歌登录页面(即使电子表格是公开的)。该链接在隐身窗口中有效,无需登录。

标签: php csv curl google-api google-docs


【解决方案1】:

确保电子表格可公开访问,并通过从“文件”菜单中选择“发布到网络”发布到网络。

复制链接并在浏览器中查看以检查其是否有效。然后将 URL 末尾的/pubhtml 替换为/export?format=csv&id,瞧!好吧,它对我有用。

https://productforums.google.com/forum/#!topic/docs/An-nZtjaupU

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-09
    • 1970-01-01
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-30
    相关资源
    最近更新 更多