在scrapy中使用dateparser转换日期格式时删除时间戳

我在scrapy中使用dateparser来转换日期格式。


原始日期格式: Apr 16, 2019


使用日期解析器后: 2019-04-16  00:00:00


这就是我想要实现的。但是,我仍然想从日期格式中删除时间,所以最后我只有2019-04-16. 不幸的是,我无法意识到这一点。


这是我的代码行:


import dateparser


...


def parse_site(self, response):

        def get_with_xpath(query):

             return response.xpath(query).get(default='').strip()

        yield {

            'date': dateparser.parse(get_with_xpath('//meta[@name="date"]/@content'))

        }

正如我所说,它有效。但是我想删除时间戳。有任何想法吗?


墨色风雨
浏览 170回答 2
2回答

慕丝7291255

如果成功,则 Dateparser.parse 返回表示解析日期的日期时间。您可以使用 strftime() 函数删除时间戳,如下所示dateparser.parse('Apr 16, 2019').strftime("%Y-%m-%d")

繁星coding

该库的方法以datetime格式返回所有值。但之后你可以随意对他们做任何你想做的事情。检查这个例子:>>> import dateparser>>> dateparser.parse("Apr 16, 2019")datetime.datetime(2019, 4, 16, 0, 0)>>> dateparser.parse("Apr 16, 2019").date()datetime.date(2019, 4, 16)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python