网页刮刮 - 谷歌地图网站 - 是否有可能刮掉?

时间:2015-11-09 21:09:28

标签: scrape

刚加入SO所以我想知道你是否可以帮我解决这个问题。 我们曾经刮过一个网站并获得美国/世界的crossfit健身房的所有联系信息,因为那里的信息非常暴露。然而,现在,他们已经将他们的网站更改为map.crossfit.com,因此信息嵌入在谷歌样式地图中,因此您只能通过缩放实际获取每个健身房的信息(姓名,地址,电话号码等)并逐一选择它们,这将永远只需要我获得所有美国(约6,000)。

我不是编程方面的专家,所以我假设如果信息仍然存在,那么应该有一种方法来抓它。你能告诉我这是否可能并且可能给我一些暗示吗?

真的很感谢你的帮助! 瑞克

3 个答案:

答案 0 :(得分:3)

您好,您可以使用下一个命令=

卷曲'https://map.crossfit.com/getAffiliateInfo?aid=9347'

输出看起来像 -

{“name”:“CrossFit Radiate”,“website”:“http://www.crossfitradiate.com/”,“address”:“149 S. Fowler St”,“city”:“Bishop”, “州”:“CA”,“zip”:“93514”,“country”:“United States”,“cfkids”:true,“phone”:“(760)920-7519”,“courses”:[] }

你会得到一个json,里面有关于健身房的所有信息......

- 如果您在变量aid = 1 -

中更改请求

输出 -

“name”:“Golden State CrossFit”,“website”:“http://goldenstatecrossfit.com/”,“address”:“11174 La Grange Ave”,“city”:“洛杉矶”,“州” “:”CA“,”zip“:”90025“,”country“:”United States“,”cfkids“:false,”phone“:”(818)665-6512“,”courses“:[]} < / p>

- 制作一个foor循环 -

并将值+1添加到值

- 信息可以从json解析为csv,excel或

- 问候 -

答案 1 :(得分:0)

您显然可以通过此网址公开搜索自由文字:

https://map.crossfit.com/ac?term=alaska

替换&#34;阿拉斯加&#34;无论你想要什么,也许是来自a-z的循环,你应该在5分钟内获得所有结果。但我不确定他们是否会批准这些事情,并最终会采取措施。

答案 2 :(得分:0)

我建议使用一个简单的nodejs / express脚本并将结果推送到数组或对象中。只要其中一个属性不是“null”,就继续递增。