tzwhere模块 根据经纬度判断时区
先说一说这个问题的误区:
1: 根据地理常识,我们知道时区有24个,经度/15=商+余数,此时的商就是是时区,给大组长说了一下,不沾边
又过了几天
2:发现django自带的模块timezone,也叫时区,于是就顺着这条道开始查找,发现一个插件----pytz
研究这个模块的时候,发现pytz.all_timezones() 可以输出所有的时区,一查看长度有592个,这么多的时区
当初自己说的24个时区太幼稚了.
于是开始根据这么多的时区想问题,用户输入经纬度,判断在那个时区中,又要TM了,前台输入的经纬度,而自己获取
的时区都是城市名,他们之间该怎么换算,开始的思路是:
把所有的时区作为常量转化为经纬度,放到setting中,用一个查一个,前台输入经纬度做减法运算,获取最小值,根据最小值
找到对应的时区,当时感觉很聪明问题解决了,还没有和组长说,不过感觉有点麻烦
于是问了问别人,还是大神多
3:python是最简洁的语言,怎么会有你想的那么复杂呢,他有自带的模块----tzwhere
当时听到大神说的这个模块,在百度上找了找,又TM了,百度上居然搜不到,对百度真失望,不废话了直接上代码
谷歌搜索:
how to lookup the timezone for lat/lng with python library (the 3rd page is your answer)
测试代码如下

是不是你想要的结果,反正是我想要的...
除此之外:
当我们找到模块后使用pip安装,但是总是包一个错误:ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443): Read timed out
于是又开始查找怎么接触这个错误
Read timed out
下载超时了,天朝的网络就这样。做程序员真心不容易。
只有修改pip源了。
临时使用:pip install pythonModuleName -i https://pypi.douban.com/simple
修改默认的软件源:
修改/etc/pip.conf 文件,即可为所有用户配置.
修改~/.pip/pip.conf为当前用户配置. windows下pip配置文件为C:Usersxxpippip.ini,没有就新建.
(时区问题,谷歌有好多的答案,这个模块还有pytz, timezonefinder, )
geocoders :http://stackoverflow.com/questions/16086962/how-to-get-a-time-zone-from-a-location-using-latitude-and-longitude-coordinates
tzwhere模块 根据经纬度判断时区的更多相关文章
- 通过GSM模块发送经纬度求救信息。
本博客作为实验笔记,仅供学习交流.(转载请注明出处) 本实验通过GSM模块:SIM900a,实现向特定手机发送sos求救信号,并且利用GPS模块:微科VK2828U7G5LF,将经纬度信息同时发送到手 ...
- 第十九章 Python os模块,pathlib 判断文件是目录还是文件
OS模块 os.path.abspath() :返回path规范化的绝对路径 import sys import os BASE_DIR = os.path.dirname(os.path.dirna ...
- 查询mysql中经纬度判断坐标范围
先上代码,稍后附上说明: 1. 从mysql中取出记录,打印有效经纬度: import json import MySQLdb # lines = c.fetchall() #所有的记录,一个tupl ...
- 根据GPS经纬度判断当前所属的市区
这个事情分两步走 1. 拿到行政区划的地理围栏数据 2. 根据GPS定位判断一个点是否落在地理围栏的多边形区域里. 1. 获取行政区划的地理围栏数据可以利用百度API.打开以前我的一个例子在chrom ...
- expected_conditions模块提供了判断页面元素的16种方法
1.title_is: 判断当前页面的title是否完全等于(==)预期字符串,返回布尔值2.title_contains : 判断当前页面的title是否包含预期字符串,返回布尔值3.presenc ...
- 09 . Python3之常用模块
模块的定义与分类 模块是什么? 一个函数封装一个功能,你使用的软件可能就是由n多个函数组成的(先备考虑面向对象).比如抖音这个软件,不可能将所有程序都写入一个文件,所以咱们应该将文件划分,这样其组织结 ...
- 初学Node(三)模块系统
模块系统 Node根据CommonJS规范实现了一套自己的模块机制,可以使用require()导入一个模块,使用module.exports导出一个模块. require使用 在Node中我们可以使用 ...
- 获取某地的经纬度 && 通过经纬度获取相应的地理位置
最近要通过一个经纬度判断该经纬度是否位于某个地区内,所以通过网上查找资料,整合后出了下面的内容. 1.通过地址获取改地址的经纬度 /** * @param addr * 查询的地址 * @return ...
- python+selenium自动化软件测试(第4章):场景判断与封装
4.1 显示等待WebDriverWait 前言:在脚本中加入太多的sleep后会影响脚本的执行速度,虽然implicitly_wait()这种隐式等待在一定程度上节省了很多时间.但是一旦页面上某些j ...
随机推荐
- android:descendantFocusability用法简析
开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,自己的Adapter去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了 ...
- LoadRunner调用Oracle存储过程
为了测试这个存储过程,我遥了一圈去做这个事情,这里说一下我自己接受到任务和自己开始是怎么想的. 方法一: 一开始我想着可以使用C#直接去调用存储过程,然后用Loadrunner调用C#的dll去测试, ...
- 用Java实现网络爬虫
myCrawler.java package WebCrawler; import java.io.File; import java.util.ArrayList; import java.util ...
- KEEPALIVED 双机自动切换部署备忘
1.配置文件的名字不要型错了.开始我将配置文件写成keeplive.conf,运行后也不报错,但无法看到VIP.日志里也看不到任何有价值信息.直到后来反复检查才发现可能配置文件名有问题,修正为keep ...
- 批处理——服务器的web文件备份
首先建立三个文本文件,稍后会变成.bat结尾的批处理文件. 第一个文件:copyfile.bat[复制需要备份的文件到tmp文件下,等待压缩时使用] xcopy "D:\Webhost\*. ...
- MFC打开系统关于对话框
HICON Icon = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDR_MAINFRAME)); //IDR_MAINFRAME为图标的ID ...
- android stduio 引入 .so
- 使用Cobbler无人值守安装CentOS6.5(一)
Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows.该工具使用python开发,小巧轻便(才15k行代码),使用简单的命令即可完成PXE网络安装环境的配置 ...
- paper 132:图像去噪算法:NL-Means和BM3D
这篇文章写的非常好,确定要~认真~慎重~的转载了,具体请关注本文编辑作者:http://wenhuix.github.io/research/denoise.html 我不会告诉你这里的代码都是f ...
- 查看SQL语句在SQL Server上的执行时间
set statistics profile onset statistics io onset statistics time ongo--begin <这里写上你的语句...> se ...