如何在没有api的情况下从谷歌获得“你的意思”数据吗?

时间:2018-04-26 21:02:23

标签: c curl google-search

我尝试在C中下载带有curl的Google搜索页面的源代码,并获取“您的意思是”或“显示结果”数据,但我失败了。

如何仅使用C?

保存Google搜索页面源代码

示例网址:https://www.google.com/search?q=stacoverflow

我想要:view-source:https://www.google.com/search?q=stacoverflow

谢谢。

1 个答案:

答案 0 :(得分:0)

首先:确保您指定了用户代理。 (搜索curl文档以了解如何执行此操作。)如果您未指定用户代理,Google不会向您提供页面。

这是我的用户代理,它似乎有效:“Mozilla / 5.0(X11; Linux x86_64)AppleWebKit / 537.36(KHTML,像Gecko)Chrome / 64.0.3282.119 Safari / 537.36”

第二:确保您尝试在Google网站的输出中找到正确的字符串。 Google可能会尝试从您的IP地址中找出您所在的国家/地区,并尝试为您的语言本地化字符串“您是说”还是“显示结果”。例如,我现在在爱沙尼亚,谷歌(我试图访问google.COM!)确定我现在的国家并给了我“Näitabtulemusi”而不是“显示结果”。此外,我想在此指出:您的curl库不会与您的浏览器共享设置,coockies等。 I. e。如果您在浏览器中使用Google设置某种语言,则curl不会继承它。

第三:当我用英语获得Google结果时,我得到“显示结果”而不是“你的意思”。所以,尝试搜索不同的字符串。

尝试通过一些HTML更好的方式传递Google输出并查看结果源