我正在创建一个带有烧瓶的网站,想显示不同城市的实时时钟。 我在数据库中存储了每个城市的经度和纬度。 使用geonames插件,我可以通过坐标获得timezoneid。在
示例:
import geonames
geonames_client = geonames.GeonamesClient('demo')
geonames_result = geonames_client.find_timezone({'lat': 48.871236, 'lng': 2.77928})
print geonames_result['timezoneId']
输出:
'欧洲/巴黎'
如何在页面上显示实时时钟?在
示例:
本市当前时间:12:59
升级版: 感谢@Matt,我知道如何用javascript显示实时时区:
^{pr2}$现在,我遇到了另一个问题-我无法通过坐标。直线"geonames.GeonamesClient('username')”由于某些原因无法工作。我从数据库中读取result['Lat']和result['Lng']。在
import geonames
try:
location = {}
location['lat'] = result['Lat']
location['lng'] = result['Lng']
geonames_client = geonames.GeonamesClient('username')
print "test"
geonames_result = geonames_client.find_timezone(location)
print geonames_result['timezoneId']
result['Timezone'] = geonames_result['timezoneId']
except:
result['Timezone'] = 'America/Los_Angeles'
所以,我不断地得到except值。在
我用的是Flask+virtualenv+uwsgi+Nginx
UPD2: 我设法做到了。我正在从mysql数据库中读取城市和城市时区的lat和lng,如果没有指定时区-我会向地理名称.org从long和lat获取时区id并将其写入数据库,这样下次就不需要请求了。然后我将时区id发送到Jinja2模板。使用力矩.js时刻时区显示城市的当前时间。您可以看到更新的页面(首先清除缓存):[链接]范塔齐亚测试-svit.com.ua/city/9在
为了从geonames获取时区,我使用以下函数:
import urllib
import json
try:
url = "http://api.geonames.org/timezoneJSON?lat=%s&lng=%s&username=%s" % (Lat, Lng, username)
response = urllib.urlopen(url);
data = json.loads(response.read())
Timezone = data['timezoneId']
except:
Timezone = ''
其中Lat=纬度,Lng=经度,username=用户名基因组.org在
感谢@Matt,我知道如何用javascript显示实时时区:
用于后端。我正在从mysql数据库中读取城市和城市时区的lat和lng,如果没有指定时区-我会向地理名称.org从long和lat获取时区id并将其写入数据库,这样下次就不需要请求了。然后我将时区id发送到Jinja2模板。使用力矩.js时刻时区显示城市的当前时间。您可以看到更新的页面(首先清除缓存):http://test.fantazia-svit.com.ua/city/9
为了从geonames获取时区,我使用以下函数:
^{pr2}$其中Lat=纬度,Lng=经度,username=用户名gonames.org网站时区-是您在前端插入的时区id
相关问题 更多 >
编程相关推荐