Rumah > Soal Jawab > teks badan
想做一个自动转发网站新闻的微博机器人作为python练手项目。
我知道需要api对接、需要爬取网站的新闻链接和标题。
但是如何只提取最新的新闻呢?
以下是按照我的要求过滤后,输出所有新闻的代码:
bar = soup.find_all('li', attrs={'data-label': True}) news = len(bar) for i in range(news): if u'巴塞罗那' in bar[i]['data-label'].split(','): print bar[i]
我想提取过滤后列表里的第一条:print bar .但提取后会反复显示len(bar)次,而且跳过过滤规则,请问如何解决?
三叔2016-10-22 16:36:21
你是在爬取直播吧吧
可以设置一个变量lasttime记录上次爬取的时间
from datetime import datetime #type datetime lasttime bar = soup.find_all('li', attrs={'data-label': True}) news = len(bar) for i in range(news): d = datetime.strptime(bar[i].text[-19:], "%Y-%m-%d %H:%M:%S") if u'巴塞罗那' in bar[i]['data-label'].split(',') and d > lasttime: print bar[i]