我发现dateparser是将自然语言转换为日期的好方法。现在,我试图操纵解析器的输出而没有成功。
from dateparser import parse
import datetime
def pars():
n = "in two days"
x = parse(n, settings={'TIMEZONE': 'US/Eastern'})
print (x)
>>> 2016-08-25 00:18:03.268506
t = datetime.datetime(x)
t.strftime('%m/%d/%Y')
print (t)
pars()
我收到错误:TypeError:需要一个整数(得到类型datetime.datetime)
答案 0 :(得分:0)
代码有很多问题。
dateparser
会返回datetime.datetime
个对象,而不是int
所期望的datetime.datetime
strftime
不会更新datetime.datetime
对象,如果您想保留它产生的字符串值,请将其分配给某些var。
def pars():
x = parse('in two days')
t = x.strftime('%m/%d/%Y')
print 'datetime', x
print 'strftime', t
>>> pars()
datetime 2016-09-30 23:34:07.863881
strftime 09/30/2016