我对 Python 很陌生,我正在尝试完成以下工作:
- 从 Yahoo Finance News API 拉取 RSS 提要 -> YDN
- 将 Title、Link、PubDate 放入数据库表中
- 仅存储唯一的标题和最新的 PubDate
1和2我没有问题,但是当我尝试做3时,我遇到了一些麻烦。以下是该表的外观:
如您所见,我复制了具有不同 PubDate 的标题。我一直在尝试做的是按照 Microsoft Kb -> Support Microsoft中的步骤进行操作。
我能够完成步骤 1 - 3:
- 选择计数 > 1 的所有标题到名为 holdkey 的表中
- 在holdkey表中选择所有Titles等于Titles的不同记录
我的代码与 MSFT 链接中显示的代码略有不同:
import sqlite3
cur = db.cursor()
cur.execute('''create table holdkey as
select Title,count(*)
from bar group by Title
having count(*)>1''')
cur.execute('''create table holdup as
select distinct bar.*
from bar, holdkey
where bar.Title = holdkey.Title''')
我需要帮助的是,在我的保留表中(如屏幕截图所示),我仍然得到重复的标题,因为 pubDate 是不同的,并且它被 SQLite 称为不同。有没有办法根据 PubDate 删除重复项?
理想情况下,我会保留最新的,但摆脱重复更重要。
让我知道是否需要更多说明。谢谢