python 通過騰訊地圖API獲取全國關鍵詞(樓盤/商場)位置資訊
阿新 • • 發佈:2018-12-18
到騰訊地圖API官網https://lbs.qq.com/index.html 申請一張賬號,申請開發者金鑰(Key):申請金鑰。
以下為搜尋全國萬達的地理位置資訊
#!coding=utf-8 import requests import re import random import time import json from requests.packages.urllib3.exceptions import InsecureRequestWarning import pandas as pd requests.packages.urllib3.disable_warnings(InsecureRequestWarning) ###禁止提醒SSL警告 key=''##開發者金鑰ID class dzdp(object): def __init__(self,keyword): self.keyword=keyword self.citylist=[ '北京','天津','上海','重慶','合肥','宿州','淮北','阜陽','蚌埠','淮南','滁州','馬鞍山','蕪湖','銅陵','安慶','黃山','六安','池州','宣城','亳州','廈門','福州','南平','三明','莆田','泉州','漳州', '龍巖','寧德','蘭州','嘉峪關','金昌','白銀','天水','酒泉','張掖','武威','慶陽','平涼','定西','隴南','甘南','廣州','深圳','清遠','韶關','河源','梅州','潮州','汕頭','揭陽','汕尾','惠州','東莞', '珠海','中山','江門','佛山','肇慶','雲浮','陽江','茂名','湛江','貴陽','六盤水','遵義','安順','畢節','銅仁','石家莊','邯鄲','唐山','保定','秦皇島','邢臺','張家口','承德','滄州','廊坊','衡水', '哈爾濱','齊齊哈爾','黑河','大慶','伊春','鶴崗','佳木斯','雙鴨山','七臺河','雞西','牡丹江','綏化','鄭州','開封','洛陽','平頂山','安陽','鶴壁','新鄉','焦作','濮陽','許昌','漯河','三門峽','南陽', '商丘','周口','駐馬店','信陽','濟源','鞏義','鄧州','永城','汝州','武漢','十堰','襄樊','荊門','孝感','黃岡','鄂州','黃石','咸寧','荊州','宜昌','隨州','仙桃','天門','潛江','長沙','衡陽', '張家界','常德','益陽','岳陽','株洲','湘潭','郴州','永州','邵陽','懷化','婁底','長春','吉林市','白城','松原','四平','遼源','通化','白山','南昌','九江','景德鎮','鷹潭','新餘','萍鄉','贛州', '上饒','撫州','宜春','吉安','南京','徐州','連雲港','宿遷','淮安','鹽城','揚州','泰州','南通','鎮江','常州','無錫','蘇州','瀋陽','大連','朝陽','阜新','鐵嶺','撫順','本溪','遼陽','鞍山','丹東', '營口','盤錦','錦州','葫蘆島','濟南','青島','聊城','德州','東營','淄博','濰坊','煙臺','威海','日照','臨沂','棗莊','濟寧','泰安','萊蕪','濱州','菏澤','西安','延安','銅川','渭南','咸陽','寶雞', '漢中','榆林','商洛','安康','太原','大同','朔州','陽泉','長治','晉城','忻州','呂梁','晉中','臨汾','運城','成都','廣元','綿陽','德陽','南充','廣安','遂寧','內江','樂山','自貢','瀘州','宜賓', '攀枝花','巴中','達州','資陽','眉山','雅安','昆明','曲靖','玉溪','麗江','昭通','思茅','臨滄','保山','杭州','寧波','湖州','嘉興','舟山','紹興','衢州','金華','台州','溫州','麗水','西寧', '海口市','三亞市','南寧','桂林','柳州','梧州','貴港','玉林','欽州','北海','防城港','崇左','百色','河池','來賓','賀州','呼和浩特','包頭','烏海','赤峰','呼倫貝爾','通遼','烏蘭察布','鄂爾多斯', '巴彥淖爾','銀川','石嘴山','吳忠','中衛','固原','拉薩','烏魯木齊','克拉瑪依','石河子','阿拉爾','圖木舒克','五家渠','北屯','香港','澳門' ] ##城市內搜尋結果 def search_qqmap(self): df = pd.DataFrame(columns=('ID', '店名', '地址', '電話', '類別', '緯度', '經度', '郵編', '省', '市', '區')) x=0 for i in self.citylist: p=1 while p>0: time.sleep(0.22) url='https://apis.map.qq.com/ws/place/v1/search?boundary=region({},0)&page_size=20&page_index={}&keyword={}&orderby=_distance&key={}'.format(i,p,self.keyword,key) req=requests.get(url=url,verify=False).json() data=req['data'] print(p,data) if data!=[]: for j in data: id=j['id'] ##ID title=j['title'] ##店名 address=j['address'] ##地址 tel=j['tel'] ##電話 category=j['category'] ##類別 lat=j['location']['lat'] ##緯度 lng=j['location']['lng'] ##經度 adcode=j['ad_info']['adcode'] ##郵編 province=j['ad_info']['province'] ##省 city=j['ad_info']['city'] ##市 district=j['ad_info']['district'] ##區 print(id, title, address, tel,category, lat, lng,adcode, province, city,district) df.loc[x] = [id, title, address, tel,category, lat, lng,adcode, province, city,district] x = x + 1 p = p + 1 else: p=-1 df.to_excel(self.keyword+'.xlsx',index=False, encoding="GB18030") if __name__ == '__main__': keyword='萬達' dp=dzdp(keyword) dp.search_qqmap()