• 如何抓取google的搜索结果?


        昨天周末快下班的时候,看到QQ群一朋友在在问"如何抓取google的搜索结果?",平时这群高手也众多,都很活跃,今天突然没动静了(估计周末忙),我就去看了下google 的搜索结果页面的源码。源码中没有实际的“搜索的文字”,只是大量的js。虽然google的js代码写的阅读性不强,我也没有格式化去阅读,就试着找一些关键点(比方说 和ajax相关的,一些包含的其他js).我发现了一点东西:

    http://www.google.com.hk/complete/search?q=hello 打开这个会得到一个js 文件,内容如下:

    window.google.ac.h(["hello",[["hello kitty","","0"],["hello kitty专卖店","","1"],["hello kitty图片","","2"],["hello","","3"],["hello kitty 手机","","4"],["hello world","","5"],["hello pizza","","6"],["hello teddy","","7"],["hellotxt","","8"],["hellocq","","9"]],{"k":1}])

    这里包含了“hello”的 相关关键词。(发挥你的想象,至少这个当做seo的数据源。)

    不过还没有解决到上面的问题,又接着看代码(还是跳跃式的看),突然发现一句:“no_ajax_no_load.js”的时候,突然想到不支持ajax的用户能使用google吗?google这么大的公司肯定不会放弃禁止使用javascript的用户,我禁止javascript后测试后发现如下地址:

    http://www.google.com.hk/search?hl=zh-CN&newwindow=1&safe=strict&gbv=1&q=hello

    好了,问题解决了,搜索结果页面 源代码中包含抓取的内容,使用此url也不需要禁用javascript了。

    说明:我没有实际写代码做抓取结果的测试,但我用站长的机器人工具(http://tool.chinaz.com/Tools/Robot.aspx)能获取内容。当然我想google肯定也相关的限制,比如:同一ip的访问频率限制等。

  • 相关阅读:
    网易官方」极客战记(codecombat)攻略-沙漠-跟上时间-keeping-time
    jenkins 通过使用crumbissuer停止job
    获取crumbIssuer
    解决docker容器vim高度宽度显示不正常
    嵌入skype标签
    pip --user参数
    python requests模块和 urllib.request模块
    python字符识别
    bs4解析xml文件,制作xml文件
    jenkins api
  • 原文地址:https://www.cnblogs.com/ikodota/p/2237111.html
Copyright © 2020-2023  润新知