News Scraper 总是获取第二篇最新文章而不是最新文章
News Scraper always get's second latest article instead of latest article
我制作了一个新闻抓取器,它获取名为 "Phoronix" 的网站的 RSS 提要并将其保存在文本文件中。但由于某种原因,它获得了第二篇最新文章而不是最新文章。
代码如下:
import feedparser
import time
def Log():
f = open("Logs/phoronixdb.txt", "a")
f.write("\n")
f.write("\n" + entry.published)
f.write("\n")
f.write("\n" + entry.title)
f.write("\n")
f.write("\n" + entry.summary)
f.write("\n")
f.write("\n" + entry.link)
f.close()
def CheckDate():
f2 = open("db/phoronixlastdate.txt", "r")
date = f2.read()
if date == entry.published:
f2.close()
else:
Log()
f2.close()
f2 = open("db/phoronixlastdate.txt", "w")
f2.write(entry.published)
f2.close()
while True:
NewsFeed = feedparser.parse("https://www.phoronix.com/rss.php")
entry = NewsFeed.entries[1]
CheckDate()
time.sleep(5)
我的猜测是这个
entry = NewsFeed.entries[1]
应该是
entry = NewsFeed.entries[0]
这是因为我认为条目 return 是一个数组形式的文章列表,其中起始索引 (0) 对应于第一篇文章,依此类推。
我制作了一个新闻抓取器,它获取名为 "Phoronix" 的网站的 RSS 提要并将其保存在文本文件中。但由于某种原因,它获得了第二篇最新文章而不是最新文章。
代码如下:
import feedparser
import time
def Log():
f = open("Logs/phoronixdb.txt", "a")
f.write("\n")
f.write("\n" + entry.published)
f.write("\n")
f.write("\n" + entry.title)
f.write("\n")
f.write("\n" + entry.summary)
f.write("\n")
f.write("\n" + entry.link)
f.close()
def CheckDate():
f2 = open("db/phoronixlastdate.txt", "r")
date = f2.read()
if date == entry.published:
f2.close()
else:
Log()
f2.close()
f2 = open("db/phoronixlastdate.txt", "w")
f2.write(entry.published)
f2.close()
while True:
NewsFeed = feedparser.parse("https://www.phoronix.com/rss.php")
entry = NewsFeed.entries[1]
CheckDate()
time.sleep(5)
我的猜测是这个
entry = NewsFeed.entries[1]
应该是
entry = NewsFeed.entries[0]
这是因为我认为条目 return 是一个数组形式的文章列表,其中起始索引 (0) 对应于第一篇文章,依此类推。