分析建模,日常问题整理(二十二)
2019.1.31~2019.2.18
- 时间戳转化
import datetime
timeArray = datetime.fromtimestamp(1509636609.0)
- 时间戳转化
按照不同类别的时间戳转化为时间↓
时间戳的转换方法
- 地图坐标获取
代码一:这个主要提取市层级
import requests
import json
def get_coordinate(address):
par = {'address': address, 'key': 'cb649a25c1f81c1451adbeca73623251'}
url = 'http://restapi.amap.com/v3/geocode/geo'
res = requests.get(url, par)
json_data = json.loads(res.text)
geo = json_data['geocodes'][0]['location']
longitude = geo.split(',')[0] # 经度
latitude = geo.split(',')[1] # 纬度
lst = [float(longitude),float(latitude)]
return lst
coordinate = dict()
for x in temlst:
try :
lst = get_coordinate(x)
except:
print(x)
coordinate[x] = lst
代码二:这个主要提取区县或者街道层级
import requests, re
from urllib import parse
def area_query(region):
header = {'User-Agent': 'Opera/8.0 (Windows NT 5.1; U; en)'}
url = 'http://apis.map.qq.com/jsapi?'
data = {
'qt': 'poi',
'wd': region,
'pn': 0,
'rn': 10,
'rich_source': 'qipao',
'rich': 'web',
'nj': 0,
'c': 1,
'key': 'FBOBZ-VODWU-C7SVF-B2BDI-UK3JE-YBFUS',
'output': 'jsonp',
'pf': 'jsapi',
'ref': 'jsapi',
'cb': 'qq.maps._svcb3.search_service_0'}
coordinate_url = url + parse.urlencode(data)
r = requests.get(coordinate_url, headers=header)
longitude = re.findall('"pointx":\s*"(.+?)"', r.text)[0]
latitude = re.findall('"pointy":\s*"(.+?)"', r.text)[0]
lst = [float(longitude), float(latitude)]
return lst
import requests, re
from urllib import parse
def area_query(region):
header = {'User-Agent': 'Opera/8.0 (Windows NT 5.1; U; en)'}
url = 'http://apis.map.qq.com/jsapi?'
data = {
'qt': 'poi',
'wd': region,
'pn': 0,
'rn': 10,
'rich_source': 'qipao',
'rich': 'web',
'nj': 0,
'c': 1,
'key': 'FBOBZ-VODWU-C7SVF-B2BDI-UK3JE-YBFUS',
'output': 'jsonp',
'pf': 'jsapi',
'ref': 'jsapi',
'cb': 'qq.maps._svcb3.search_service_0'}
coordinate_url = url + parse.urlencode(data)
r = requests.get(coordinate_url, headers=header)
longitude = re.findall('"pointx":\s*(.+?)\,', r.text)
latitude = re.findall('"pointy":\s*(.+?)\,', r.text)
longitude = [float(i) for i in longitude if float(i)<360][0]
latitude = [float(i) for i in latitude if float(i)<90 ][0]
lst = [longitude, latitude]
return lst
area_query('广西桂林桂林市桂林市七星区')
有个问题,对详细地址会定位不精准
- 在同一html中写多个script文件,命名重复会被覆盖。一般将scrip单独写成js文件后导入html,不会出现这个问题。
- 地图只显示纬度,不显示数据,怎么解决。
https://gallery.echartsjs.com/editor.html?c=scatter-map-brush
- 地图只显示纬度,不显示数据,怎么解决。