test_date.py
# -*- coding: utf-8 -*-
import time;
def echo_time(dt):
time_array = time.strptime(dt, "%Y-%m-%d")
print dt + "\t" + str(long(time.mktime(time_array)) * 1000)
def echo_time_f(dt, f):
time_array = time.strptime(dt, f)
print dt + "\t" + str(long(time.mktime(time_array)) * 1000)
def echo_time_m(timestamp):
time_local = time.localtime(timestamp / 1000)
print time.strftime("%Y-%m-%d %H:%M:%S", time_local)
def test_date():
# print long(time.time())*1000
echo_time_m(1498838400000)
echo_time_m(1501516799999)
echo_time_m(1508486066239)
echo_time_f("2017-09-06 16", "%Y-%m-%d %H")
echo_time("2017-07-01")
echo_time("2017-07-30")
echo_time("2017-07-31")
echo_time("2017-08-01")
echo_time("2017-08-14")
echo_time("2017-08-20")
echo_time("2017-08-21")
echo_time("2017-08-27")
echo_time("2017-08-28")
echo_time("2017-09-01")
echo_time("2017-09-03")
echo_time("2017-09-04")
echo_time("2017-09-07")
echo_time("2017-09-11")
test_date()
test_url.py
# -*- coding: utf-8 -*-
from http_base import post
local = 'local'
test = 'test'
md5 = 'md5'
token = "token"
# post(local, md5, "getUserPrivilege?appKey=5252515142&thirdAccountId=zlf&channelId=GZGD")
# post(local,token,"getPackageInfo?packageId=501701&appKey=5252515142&mac=aaa&wsId=237449&channelId=GZGD&loginToken=237449&mac=12")
http_base.py
import urllib2, urllib, hashlib, time, json, math, https
sec = "NIaKxmywqF"
def md5(src):
m2 = hashlib.md5()
m2.update(src)
return m2.hexdigest()
def to_string(dic):
s = ""
keys = dic.keys()
keys.sort()
for k in keys:
s += "&" + k
s += "=" + str(dic[k])
return s[1:] + sec
def post(env, encode_type="md5", url=""):
host = get_host(env)
param = parse_param(url)
if encode_type == 'md5':
param["sign"] = md5(to_string(param))
elif encode_type == 'token':
param["v"] = 1
param["t"] = int(time.time())
param["token"] = md5("xxx" + str(param["t"]))
begin = time.time()
do_post(host + url[0:url.find("?")], param)
print str(math.floor((time.time() - begin) * 1000)) + "ms"
return
def do_post(url, param):
try:
print url
print param
post_data = urllib.urlencode(param)
request = urllib2.Request(url, post_data)
response = urllib2.urlopen(request)
result = response.read()
result = result.replace('''\\"''', '''"''')
result = result.replace('''content":"''', '''content":''')
result = result.replace('''","type":0''', ''',"type":0''')
print result
try:
print(json.dumps(json.loads(result), indent=4, sort_keys=False, ensure_ascii=False))
except Exception as e:
print e
except Exception as ex:
print ex
finally:
print "final" # print response
def get_host(env):
host = ""
if env == "local":
host = "http://localhost:9030/bms/is/"
elif env == "test":
host = "https://xx:9930/bms/is/"
elif env == "deploy":
host = "https://xxxx:9930/bms/is/"
return host
def parse_param(url):
param = {}
query_string = url[url.find("?") + 1:]
for kv in query_string.split('&'):
k = kv.split('=')[0]
v = kv.split('=')[1]
param[k] = v
return param
https.py
import httplib, ssl, urllib2, socket
class HTTPSConnectionV3(httplib.HTTPSConnection):
def __init__(self, *args, **kwargs):
httplib.HTTPSConnection.__init__(self, *args, **kwargs)
def connect(self):
sock = socket.create_connection((self.host, self.port), self.timeout)
if self._tunnel_host:
self.sock = sock
self._tunnel()
try:
self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, ssl_version=ssl.PROTOCOL_SSLv23)
except ssl.SSLError, e:
print("TryingSSLv3.")
self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, ssl_version=ssl.PROTOCOL_SSLv23)
class HTTPSHandlerV3(urllib2.HTTPSHandler):
def https_open(self, req):
return self.do_open(HTTPSConnectionV3, req)
# install opener
urllib2.install_opener(urllib2.build_opener(HTTPSHandlerV3()))
# if __name__ == "__main__":
# r = urllib2.urlopen("https://www.baidu.com")
# print(r.read())