当前位置: 首页 > 科技观察

每日一技能:如何从网页中提取日期?

时间:2023-03-21 21:28:38 科技观察

Gne[1]在抽取新闻文本时准确率比较高,但由于使用正则表达式抽取新闻发布时间,抽取效果有时并不理想。最近,我发现了一个名为htmldate的Python第三方库。经过测试,提取新闻发布时间比较准确。让我们看看如何使用这个库。首先使用pip安装:python3-mpipinstallhtmldate然后我们使用Requests或者Selenium获取网站源码:importrequestsfromhtmldateimportfind_datehtml=requests.get('https://www.kingname.info/2022/03/09/this-is-gnelist/').content.decode('utf-8')date=find_date(html)print(date)运行效果如下图:以及发布时间这篇文章确实是3月9日号:再看看网易新闻,互相鼓励增进友谊(精彩绽放)|天天要闻残奥会|中国代表团|滑雪板|:现在我们使用Requests获取它的源码,然后提取发布时间:发布日期确实是正确的,但是为什么后面的时间丢失了呢?如果要保留时分秒,可以加一个参数outputformat,它的值就是你在datetime.strftime中输入的值:find_date(html,outputformat='%Y-%m-%d%H:%M:%S')运行效果如下图所示:find_date的参数,除了网页源码外,还可以传入url,或者lxml中的dom对象,例如:fromlxml.htmlimportfromstringselector=fromstring(html)date=find_date(selector)参考[1]gne:https://github.com/GeneralNewsExtractor/GeneralNewsExtractor[2]互相鼓励增进友谊(精彩绽放)|残奥会|中国代表团|滑雪板|