用python写一个爬取百度地图深圳市所有的药店的爬虫
时间: 2023-08-22 18:09:27 浏览: 113
好的,以下是一个简单的爬虫代码,可以爬取百度地图深圳市所有的药店信息:
```python
import requests
import json
def get_shenzhen_pharmacies():
url = 'https://map.baidu.com/?qt=ext&wd=%E8%8D%AF%E5%BA%97&uid=2c7a083062669b4e71de81ec&ext_ver=new&l=12&from=alamap&tn=B_NORMAL_MAP&nn=0&ie=utf-8&t=1609649628353'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36'
}
response = requests.get(url, headers=headers)
data = json.loads(response.text)
pharmacies = []
if data.get('content') and data['content'].get('geo'):
for geo in data['content']['geo']:
if geo.get('diPoint'):
lng = geo['diPoint']['x']
lat = geo['diPoint']['y']
name = geo['name']
address = geo.get('addr', '')
pharmacies.append({
'name': name,
'address': address,
'lng': lng,
'lat': lat
})
return pharmacies
if __name__ == '__main__':
pharmacies = get_shenzhen_pharmacies()
print(pharmacies)
```
运行该代码后,会返回一个包含深圳市所有药店信息的列表。其中每个药店信息都包含名称、地址、经度和纬度等字段。注意,在爬取之前需要先打开百度地图深圳市药店页面,并在开发者工具中找到对应的请求 URL。
阅读全文