本文案例内容以在谷歌地图googleMap上搜索餐厅信息为例。
把URL解析一下,先分析接口和参数。
参数分析
url="https://www.google.com/search"
params = {
"tbm":"map",
"authuser":"0",
"hl":"展示的语言,一般是zh-CN或en",
"gl":"当前IP所在的国家",
"pb":"由!1d-!2d-!3d-!8i以及一些固定字符串组成",
"q":"检索词",
"tch":"1",
"ech":"操作次数(搜索、翻页)",
"psi":"未知字符串.时间戳"
}
pb参数中的1d-2d-3d,
- 1d:似乎是地图切片边长或周长等边长
- 2d:经度
- 3d:纬度
- !8i:翻页(当前页面范围),第一页没有该字段,第二页为20,第三页为40
- 剩余参数为定值即可
注意事项
没有什么难的反爬,但是URL的构造上比较复杂。
想翻页的话需要去添加 !8i。
想切换地方的话需要换经纬度。
代码中是以缩放来取新坐标用以在地图上遍历搜索。
梯子需要自己准备好。
如果搜其他东西的话就改URL中的参数,中英文区别比较大,需要注意。
完整代码
Python代码如下:
【温馨提示:此处隐藏内容需要付费订阅后才能查看!】