我正在为客户做一个分析Google搜索结果的项目。
我查看了渲染的HTML,我可以使用HtmlAgilityPack和此代码获得谨慎的自然搜索结果:
HtmlNodeCollection Nodes = HtmlDoc.DocumentNode.SelectNodes("//li[@class='g']");
我猜测CSS类'g'的名称是为了优化而压缩的 我担心这可能会在将来发生变化并破坏代码。
是否有更好,更强大的方法,或者这是最好的方式?
答案 0 :(得分:2)
你真的不应该像谷歌这样得到结果,因为他们可能会禁止你。 更好的方法是使用Google Custom Search API。
在不久的将来也不太可能改变,所以你也不用担心。
另外,来自Google Terms of Service:
5.3您同意不通过Google提供的界面以外的任何方式访问(或尝试访问)任何服务,除非您在与Google的单独协议中明确允许这样做。您明确同意不通过任何自动方式(包括使用脚本或网络爬虫)访问(或尝试访问)任何服务,并应确保您遵守服务中存在的任何robots.txt文件中的说明。 。