技术相关 技术相关 关注:112 内容:80

Zennoposter教程:一个谷歌地图信息爬虫

  • 查看作者
  • 打赏作者
    • 1
    • Lv.1
      优质作者

      前言

      突然想扫微软的教育域名捡漏,就是在谷歌地图上搜school这样的关键字,然后把搜到的网址记下来。同理,可以用这套爬虫获取你想知道的任何公开在Google maps上的信息。

      记录操作

      所有的ZP操作一开始都建议直接记录操作,直到有记录不到或者重试错误的时候在改代码,不建议一上来就改代码,自己给自己添麻烦。

      打开Google Maps,输个地点,比如italy,然后点Nearby搜附近,输入关键词school。

      Zennoposter教程:一个谷歌地图信息爬虫

      好像有点少……按f5重启看看

      果然,输入完italy之后报错了,所以输入完之后还要加个回车,直接键盘模拟一个回车 [s-12] 。

      搜出来的结果左边列表有个website的按钮,挺好,省的一个个点进去,右键搜索一下这个地球的图标

      Zennoposter教程:一个谷歌地图信息爬虫

      一共11个,刚好也搜出来11个,应该没问题,把这个点击图标的动作加进去。

      手动整理

      点击之后网站会弹出新窗口。新窗口叫popup,在里面我记一下域名就行了。用环境变量

      {-Page.FullDomain-}

      记录的内容放到列表里,再新建个domains的列表。完成之后把popup这个标签给关了,方便我们记录下一个。

      Zennoposter教程:一个谷歌地图信息爬虫

      实际上我们并不知道每页那个地球的图标会有多少个,但是好在google maps每页只有20个结果,我们就把点图标的动作重复执行21次吧,注意匹配那里要改成计数的变量。点击动作执行时我发现会先跳到谷歌的桥页上再去到目标网站,那就加个5-8秒等待时间,让浏览器跳转一下。我这用的笨办法 [s-57] ,想节省时间的可以判断一下域名是不是谷歌,是就等1秒,不是就记录。

      Zennoposter教程:一个谷歌地图信息爬虫

      最后,这一页内容爬完,就点下一页重复之前步骤,点完下一页计数器记得清0

      Zennoposter教程:一个谷歌地图信息爬虫

      测试/改bug

      重启一遍看看……

      刚开始跑的简直完美,可是跑着跑着突然点击图标不自动跳转了。

      Zennoposter教程:一个谷歌地图信息爬虫

      特殊情况来了, 直接检查这个重定向的文本是否存在,存在就点第一个链接

      Zennoposter教程:一个谷歌地图信息爬虫

      继续跑……发现有时候似乎没点上那个地球的图标,因为激活popup窗口这个报错了,报错就让它重点一下算了

      Zennoposter教程:一个谷歌地图信息爬虫

      继续跑,似乎没别的bug了,最后列表加上去重和保存至文件。收工 [s-3-5] 

      需要这个zp脚本学习研究的可以pm我

      Lv.2
      官方
      打赏了282硬币
      回复

      请登录之后再进行评论

      登录
    • 发布
    • 任务
    • 帖子间隔 侧栏位置: