import requests
session = requests.session()
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'
}
url_1 = 'https://h5.ele.me/restapi/eus/login/mobile_send_code'
tel = input('請輸入手機號碼:')
data_1 = {'captcha_hash':'',
'captcha_value':'',
'mobile':tel,
'scf':''}
token = session.post(url_1, headers=headers, data=data_1).json()['validate_token']
url_2 = 'https://h5.ele.me/restapi/eus/login/login_by_mobile'
code = input('請輸入手機驗證碼:')
data_2 = {'mobile':tel,
'scf':'ms',
'validate_code':code,
'validate_token':token}
session.post(url_2,headers=headers,data=data_2)
address_url = 'https://www.ele.me/restapi/v2/pois?'
place = input('請輸入你的收貨地址:')
params = {'extras[]':'count','geohash':'ws105rz9smwm','keyword':place,'limit':'20','type':'nearby'}
# 這里使用了深圳的geohash
address_res = requests.get(address_url,params=params)
address_json = address_res.json()
print('以下,是與'+place+'相關的位置信息:\n')
n=0
for address in address_json:
print(str(n)+'. '+address['name']+':'+address['short_address']+'\n')
n = n+1
address_num = int(input('請輸入您選擇位置的序號:'))
final_address = address_json[address_num]
restaurants_url = 'https://www.ele.me/restapi/shopping/restaurants?'
# 使用帶有餐館列表的那個XHR地址。
params = {'extras[]':'activities',
'geohash':final_address['geohash'],
'latitude':final_address['latitude'],
'limit':'24',
'longitude':final_address['longitude'],
'offset':'0',
'terminal':'web'
}
# 將參數封裝,其中geohash和經緯度,來自前面獲取到的數據。
restaurants_res = session.get(restaurants_url,params=params)
# 發起請求,將響應的結果,賦值給restaurants_res
restaurants = restaurants_res.json()
# 把response對象,轉為json。
for restaurant in restaurants:
# restsurants最外層是一個列表,它可被遍歷。restaurant則是字典,里面包含了單個餐廳的所有信息。
print(restaurant['name'])
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
