2015-11-08 73 views
-1

我想从文本文件中提取日期。日期是这样写的:字 - 2015年1月5日,字。Python dateutil ValueError:未知字符串格式

from dateutil import parser 

content = "" 

data = open("some_doc.txt", "r") 
for line in data: 
    content = content + line 
content = str(content) # I don´t think that this is necessary but just to be sure 

d = parser.parse("content", fuzzy = True) 

这段代码总是给我以下错误:

Traceback (most recent call last): 
    File "C:/", line 16, in <module> 
    parser.parse(content, fuzzy = True) 
    File "C:\", line 698, in parse 
    return DEFAULTPARSER.parse(timestr, **kwargs) 
    File "C:\", line 304, in parse 
    raise ValueError("unknown string format") 
ValueError: unknown string format 

是否有人知道我应该改变或具有这种格式提取日期另一种解决方案?

+0

它不是我试过这个,但我得到了相同的错误 – marvin1849

+0

该文件中是否有多个日期?如果是这样,也许你想解析每一行?我认为你看到了问题,因为你正在用内容一次解析多个日期。我还假设你的意思parser.parse(内容,模糊=真),而不是“内容”? – pcm

回答

0

你可以做的是用正则表达式解析内容,然后使用dateutils的解析。

分享该文件的内容以帮助您更好。

PD:对不起,我的英语。

问候。

0

我认为你可以把解析放在for循环中,而不是之后的'content',因为如果多个日期不同,parse()不起作用。

这将解析文件的每一行,并从行中获取日期(假定您的文件中包含大于1的日期)。

相关问题