我正在使用feedparser打印前五大Google新闻标题。我以同样的方式从URL获取所有信息。
x = 'https://news.google.com/news/feeds?pz=1&cf=all&ned=us&hl=en&topic=t&output=rss'
feed = fp.parse(x)
我的问题是,当我启动一个shell时,我正在运行这个脚本,所以~2秒的延迟变得非常烦人。这个时间延迟主要来自通过网络的通信,还是来自解析文件?
如果它来自解析文件,有没有办法只采取我需要的东西(因为在这种情况下这是非常小的)?
如果它来自前一种可能性,有没有办法加速这个过程?
答案 0 :(得分:2)
我认为有几个延迟加起来:
我认为没有直接的方法来加快速度,尤其不是第一点。我的建议是你定期下载你的订阅源(你可以设置一个cron作业或编写一个Python守护进程)并存储在磁盘上的某个地方(即纯文本文件),所以你只需要在你的终端上显示它们启动(回声可能是最容易和最快的)。
我亲自与feedparser取得了很好的经验。我使用它用Python守护进程每半小时下载~100个feed。
答案 1 :(得分:0)
如果你想要更快的结果,实时解析不是更好的情况。
您可以尝试Celery或类似的其他解决方案异步执行此操作。我喜欢Celery,它提供了许多能力。有作为cron或async等任务的能力。