先说一说这个问题的误区:

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为当前用户配置.
  windowspip配置文件为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模块 根据经纬度判断时区的更多相关文章

  1. 通过GSM模块发送经纬度求救信息。

    本博客作为实验笔记,仅供学习交流.(转载请注明出处) 本实验通过GSM模块:SIM900a,实现向特定手机发送sos求救信号,并且利用GPS模块:微科VK2828U7G5LF,将经纬度信息同时发送到手 ...

  2. 第十九章 Python os模块,pathlib 判断文件是目录还是文件

    OS模块 os.path.abspath() :返回path规范化的绝对路径 import sys import os BASE_DIR = os.path.dirname(os.path.dirna ...

  3. 查询mysql中经纬度判断坐标范围

    先上代码,稍后附上说明: 1. 从mysql中取出记录,打印有效经纬度: import json import MySQLdb # lines = c.fetchall() #所有的记录,一个tupl ...

  4. 根据GPS经纬度判断当前所属的市区

    这个事情分两步走 1. 拿到行政区划的地理围栏数据 2. 根据GPS定位判断一个点是否落在地理围栏的多边形区域里. 1. 获取行政区划的地理围栏数据可以利用百度API.打开以前我的一个例子在chrom ...

  5. expected_conditions模块提供了判断页面元素的16种方法

    1.title_is: 判断当前页面的title是否完全等于(==)预期字符串,返回布尔值2.title_contains : 判断当前页面的title是否包含预期字符串,返回布尔值3.presenc ...

  6. 09 . Python3之常用模块

    模块的定义与分类 模块是什么? 一个函数封装一个功能,你使用的软件可能就是由n多个函数组成的(先备考虑面向对象).比如抖音这个软件,不可能将所有程序都写入一个文件,所以咱们应该将文件划分,这样其组织结 ...

  7. 初学Node(三)模块系统

    模块系统 Node根据CommonJS规范实现了一套自己的模块机制,可以使用require()导入一个模块,使用module.exports导出一个模块. require使用 在Node中我们可以使用 ...

  8. 获取某地的经纬度 && 通过经纬度获取相应的地理位置

    最近要通过一个经纬度判断该经纬度是否位于某个地区内,所以通过网上查找资料,整合后出了下面的内容. 1.通过地址获取改地址的经纬度 /** * @param addr * 查询的地址 * @return ...

  9. python+selenium自动化软件测试(第4章):场景判断与封装

    4.1 显示等待WebDriverWait 前言:在脚本中加入太多的sleep后会影响脚本的执行速度,虽然implicitly_wait()这种隐式等待在一定程度上节省了很多时间.但是一旦页面上某些j ...

随机推荐

  1. python的__future__特性

    使用python的__future__特性, __future__是在旧版本的python中提供了新版python的特性. 1) 在python2中相除返回浮点数,在python3中默认返回浮点数 & ...

  2. ios枚举规范

  3. 常用prototype函数

    $("spcode").value --取得当前页面的值的value,可以赋值 $F('spcode')         --不能赋值 $!spcode             - ...

  4. lua coroutine for iterator

    背景 前面的文章演示了使用闭包函数实现 状态的迭代器. 本文演示使用 coroutine来产生迭代器的例子. coroutine迭代器例子 -- 遍历二叉树 local binary_tree = { ...

  5. jquery选择器和基本语句

    $("#aa"); //根据ID找 $(".aa"); //根据class找 $("div"); //根据标签名找 $("[id= ...

  6. APP开发:对于IOS APP应用的推广渠道有哪些?

    亿合科技了解到,随着移动互联网时代的到来,苹果从2007年进入中国市场,一直备受大众喜爱,手机应用也层出不穷.那么对于那么多的IOS APP应用怎么能获得用户的喜爱呢?于是推广APP应用是需要做的,亿 ...

  7. DNS CNAME的一些细节

    1, 概述 DNS中的CNAME可以减轻运维压力,使得已有的DNS配置具有一定的灵活性和可扩展性.本文对CNAME中的一些细节做阐述, 使DNS服务器的运维人员和开发人员能合理地使用CNAME. 2, ...

  8. Testlink安装问题收录

    1.windows下安装testlink,进入安装页面后,在检查一些相关配置环境时报错,如下:     Checking if /var/testlink/logs/ directory exists ...

  9. (转)Spring JdbcTemplate 方法详解

    Spring JdbcTemplate方法详解 文章来源:http://blog.csdn.net/dyllove98/article/details/7772463 JdbcTemplate主要提供 ...

  10. 关于sigwait

    刚开始看sigwait函数,只是知道它是用来解除阻塞的信号,可是使我疑惑的是那么解除了以后为什么线程收到终止信号SIGINT的时候还是没能终止呢?   于是网上找了一些资料,总的理解如下所示: sig ...