URL: https://linuxfr.org/users/pterjan/journaux/filtre-liferea-pour-lemondefr Title: Filtre liferea pour lemonde.fr Authors: Pascal Terjan Date: 2006年05月02日T18:16:39+02:00 Tags: Score: 0 Il y a un truc qui m'énerve depuis longtemps sur le RSS du monde, les dépêches ont un corps vide disant d'aller sur le site. J'ai donc fait vite fait un petit script qui bourrinement va chercher le contenu de la dépêche sur l'url indiquée et remplace le contenu du tag description. Il suffit de dire à liferea de l'utiliser ("Utiliser un filtre de conversion" dans l'onglet "Source du flux") et voilà ! #!/usr/bin/ruby require "rexml/document" require 'uri' require 'net/http' require 'iconv' doc = REXML::Document.new $stdin doc.elements.each("//item") { |item| £spaces£ £/spaces£if (item.elements['title'].text =~ /D303円251円p303円252円che/) £spaces£ £/spaces£uri = URI.parse(item.elements['link'].text) £spaces£ £/spaces£h = Net::HTTP.new(uri.host) £spaces£ £/spaces£begin £spaces£ £/spaces£resp,data = h.get(uri.path) £spaces£ £/spaces£rescue £spaces£ £/spaces£end £spaces£ £/spaces£data.sub!(/^.*(.*?)<\/div.*\z/m, '1円') £spaces£ £/spaces£data.sub!(/<img src="http:\/\/medias.lemonde.fr\/mmpub\/img\/let\/.\.gif" alt='(.)'/,'1円<') £spaces£ £/spaces£data.gsub!(/<.*?>/, '') £spaces£ £/spaces£data.gsub!(/\n/, '<br/>') £spaces£ £/spaces£item.elements['description'].text = Iconv.iconv('UTF-8', 'ISO-8859-15', data) £spaces£ £/spaces£end } doc.display