標籤:經緯 原來 imp 1.2 分析 www. 商業 www 地區
先看一下抓取的,竟然有這麼多店沒有營業執照。
二、運行環境
三、分析
首先訪問餓了麼首頁,輸入想搜尋的地區,頁面隨即返回附近地區店鋪。
頁面瀏覽器地址如下:
https://www.ele.me/place/wtw39y8614v4?latitude=31.237236&longitude=121.36636
開啟瀏覽器開發人員工具,分析需要抓取的資料,接著用requests抓取該頁面地址,使用BeautifulSoup解析資料,竟然返回空值資料。
再次查看頁面資訊,向下滾動頁面,發現XHR非同步載入類型中有返回JSON格式資料。如所示:
麥口胡
連結:https://www.jianshu.com/p/19c38bfa7388
來源:簡書
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。
其中參數:
1、longitude,latitude採用的高德座標系對應搜尋地區的經緯度
2、limit=24 每次限制返回上限24個店鋪;設定再多後台最多返回30個
3、offset=24 每次返回的店鋪數量,24個數量級增加,比如頁面繼續往下翻offset=48,72……
用迴圈增加offset的位移量,就可以得到更多的店鋪資料。
此頁面我們需要採集name ,phone, address 即商戶名稱,電話,營業地址三個資料即可。一個頁面可以採集24個商家資料,json資料如:
代碼如下:
import requestsimport jsonurl=‘https://www.ele.me/restapi/shopping/restaurants?extras[]=activities&geohash=wtw39y8614v4&latitude=31.237236&limit=24&longitude=121.36636&offset=24&terminal=web‘r=requests.get(url).textd=json.loads(r)for v in d: print (v[‘name‘],v[‘phone‘],v[‘address‘])
返回結果如下:
四、代碼
五、結果顯示
在mongodb中按照地址排序,sort({address:1}) 按照地址升序排序
你學會了嗎?
歡迎大家關注我的部落格:ttps://home.cnblogs.com/u/Python1234
歡迎加入千人交流答疑群:125240963
餓了嗎上面原來有這麼多無證店鋪!還是大Python比較牛逼!