python时间处理,当天凌晨 ,次日凌晨,滚动N天

#!/usr/bin/python
#coding=utf-8
# Filename : d:\py\rebuild\handler\utils.py

import httplib,urllib
from datetime import *

class util(object):

#b百度短地址的获取
@staticmethod
def dwz(url):
'''short url

use baidu.com
'''
host = "dwz.cn"
urlpath = "/create.php"
httpconn = httplib.HTTPConnection(host)
#request(self, method, url, body=None, headers={})
params = {"url":url}
headers = {"Content-type": "application/x-www-form-urlencoded","Accept": "text/plain"}

body = urllib.urlencode(params)
#dwz.cn/create.php?url=http://write.blog.csdn.net/postedit/20907063
print body
httpconn.request("POST",urlpath,body,headers)
resp = httpconn.getresponse()
msg = {}
msg = eval(resp.read())
#print msg
#for k,v in msg.items():
#print "%s=%s" % (k,v)
return msg["tinyurl"]

def difftime(self,begin,end):
'''
type datetime
begin,end format yyyy-MM-dd HH:mm:ss or datetime
return seconds
'''
date1 = None
date2 = None
if type(begin) is str:
date1 = datetime.strptime(begin,'%Y-%d-%m %H:%M:%S') #%Y-%d-%m %H:%M:%S
elif type(begin) is datetime:
date1 = begin
else:
raise ValueError,'begin invalid argument'

if type(end) is str:
date2 = datetime.strptime(end,'%Y-%d-%m %H:%M:%S')
elif type(end) is datetime:
date2 = end
else:
raise ValueError,'endtime argument error'


diff = date2 - date1 # return datedelta obj
return int(diff.total_seconds())

def difftime_now(self,strtime):
'''
now() - strtime
'''
return self.difftime(strtime,datetime.now())

def curr_night(self):
'''
return datetime
'''
now = datetime.now()
d = datetime(now.year,now.month,now.day,0,0,0)
#return d.strftime("%Y-%d-%m %H:%M:%S")
return d


def yesterday_night(self):
'''
return datetime 
'''

now = datetime.now()
aday = timedelta(days=1)
now += aday
return datetime(now.year,now.month,now.day,0,0,0)

def add_day(self,n):
'''
n can nav
'''
now = datetime.now()
aday = timedelta(days=n)
now += aday
return now




if __name__ == "__main__":
longurl = "http://www.500wan.com/static/public/dlc/xml/dayexpect0.xml"
dw = util.dwz(longurl)
print "dw=%s" % dw

#test
d = datedelta_ = util().difftime('2014-03-01 16:44:00','2014-03-03 16:45:00')
#print d
d2 = util().difftime_now('2014-03-01 16:44:00')
#print d2

#print util().curr_night()
#print util().yesterday_night()
print util().add_day(-10)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值