小弟想做一个自动转发网站新闻的微博机器人作为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)次,而且跳过过滤规则,请问如何解决?
Explorez-vous la diffusion en direct ?
Vous pouvez définir une variable lasttime pour enregistrer l'heure de la dernière exploration
En fait, ce problème est très courant, c'est-à-dire des peines lourdes. Tout d'abord, vous devez ajouter un identifiant unique à chaque actualité, comme un horodatage, ou la méthode de connexion dans la barre de diffusion en direct : "http://news.zhibo8.cc/zuqiu/2016-10-18/5805df3d3422f", vous pouvez Disponible :
Comme identifiant unique de l'actualité, ou plus strictement, ajoutez le logo du football, tel que 0 :
Avec un identifiant unique, c'est beaucoup plus facile à gérer. Il existe de nombreuses façons, par exemple, de conserver une liste en mémoire, qui stocke les identifiants des actualités sur la page en cours, puis d'explorer la page suivante. time. Puis sur la page Les nouvelles nouvelles sont les nouvelles après le premier identifiant de la liste actuelle. Mettez ensuite à jour la liste. Vous pouvez supprimer les anciennes actualités de la liste. Par exemple, si n nouvelles actualités sont ajoutées, alors les n dernières actualités seront supprimées. Peu importe l'espace ou le temps, c'est plutôt bien.
Si vous souhaitez toujours enregistrer les actualités, enregistrez à chaque fois les actualités supprimées dans la base de données.
Les pages Web d'actualités n'ont-elles pas de champs horaires ?
Votre objectif est d'extraire les dernières nouvelles et d'inclure les mots-clés que vous avez définis ! ! En fait, le moyen le plus simple est de définir time.sleep(60) et de réexplorer les données de la page Web après une minute. Vous pourrez alors obtenir les dernières nouvelles, n'est-ce pas ? De plus, votre question contient trop peu d'informations,