'''
通过点击某一个地址,发起
https://www.mcdonalds.com.cn/ajaxs/search_by_point
获取地址附近的餐厅地址
传入的参数:当前地址的经纬度(坐标)
'''
address = input('请输入你想要查询的地址')
# 长沙
# 获取地址的url
address_url = 'https://www.mcdonalds.com.cn/ajaxs/search_by_keywords'
# 获取餐厅的url
dining_room_url = 'https://www.mcdonalds.com.cn/ajaxs/search_by_point'
import requests
address_data = {
'keywords': address,
'location[info]': 'OK',
'location[position][lng]': '121.47004',
'location[position][lat]': '31.23136'
}
# 对地址发起请求
res = requests.post(address_url, data=address_data)
address_res_data = res.json()
# 循环的过程中得到了一条地址数据,那么我们就需要从这个地址下获取到所有的餐厅
for i in address_res_data['data']:
# print(i['address'])
# 发起获取餐厅的url 需要携带什么参数?带上地址的坐标
location = i['location']
# 因为当前location取出的是字典
# 需要传入的参数是字符串,并且格式为:1.11,111.11
# break
dining_room_data = {
'point': f'{location["lat"]},{location["lng"]}',
'type': ''
}
dining_room_url_res = requests.post(dining_room_url, data=dining_room_data).json()
for i in dining_room_url_res['data']:
print(i['city'], i['district'], i['address'])
05-26
1856
08-19