Maison développement back-end Tutoriel XML/RSS Partagez un outil simple de lecture RSS

Partagez un outil simple de lecture RSS

May 03, 2017 am 09:32 AM

#!usr/bin/env python
# -*- coding:UTF-8 -*-
 
import re
from lxml import etree
from bs4 import BeautifulSoup as sp
import requests
import urllib2
import StringIO
 
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
 
headers={'User-Agent' : 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'}
 
def urlread(url):
    try:
        req=requests.get(url,headers=headers)
        req.encoding="utf-8"
        return req.text.encode("utf-8")
    except:
        req=urllib2.Request(url,headers=headers)
        response=urllib2.urlopen(req)
        return response.read().encode("utf-8")
             
class Item:
    def __init__(self,title,link,date,description):
        self.title=title.strip()
        self.link=link.strip()
        self.pubDate=date.strip()
        self.decription=self.filter(description).strip()
         
    def filter(self,description):
        description=re.sub("<.*?>",&#39;&#39;,description)
        description=re.sub("\r",&#39;&#39;,description)
        description=re.sub("\n",&#39;&#39;,description)
        description=re.sub(" "," ",description)
        if len(description)>240:
            description=description[:240]+&#39;...&#39;
        return description       
 
    def __str__(self):
        return "%s\n%s\n%s\n<%s>\n" % (
                self.title,
                self.link,
                self.decription,
                self.pubDate
                )
         
    __repr__=__str__
     
class BSParser(object):
    #url=&#39;&#39;
    def __init__(self,url):
        xml=urlread(url)
        self.reset(xml)
         
    def reset(self,xml=None):
        if xml==None:
            self.soup=sp("<xml> </xml>")
        else:
            self.soup=sp(xml,"xml")
 
    def callback(self,method,obj,tags):
        rst=None
        attr=method.lower()
 
        for tag in tags:
            try:
                rst=getattr(obj,attr)(tag)
            except:
                continue
            if rst:
                break
        return rst
 
    def getfields(self,tags=["item",&#39;entry&#39;]):
        return self.callback(method="FIND_ALL",
                            obj=self.soup,
                            tags=tags)
             
    def gettitle(self,obj,tags=["title"]):
        return self.callback("FIND",obj,tags).text
         
    def getlink(self,obj,tags=["link"]):     
        rst=self.callback("FIND",obj,tags).text
        if not rst:          
            rst=self.callback("FIND",obj,tags).get("href")
        return rst
         
    def getdate(self,obj,tags=["pubDate","published"]):
        return self.callback("FIND",obj,tags).text
         
    def getdescription(self,obj,tags=["description","content"]):       
        return self.callback("FIND",obj,tags).text
     
    def run(self):
        for item in self.getfields():
            title=self.gettitle(item)
            link=self.getlink(item)
            date=self.getdate(item)
            description=self.getdescription(item)
            newsitem=Item(title,link,date,description)
            yield newsitem
 
def test():
    parser=Parser()
    for item in parser.run():
        print item
         
if __name__=="__main__":
    test()
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser PHP et XML pour mettre en place la gestion des abonnements RSS et leur affichage sur le site internet Comment utiliser PHP et XML pour mettre en place la gestion des abonnements RSS et leur affichage sur le site internet Jul 29, 2023 am 10:09 AM

Comment utiliser PHP et XML pour mettre en œuvre la gestion et l'affichage des abonnements RSS sur un site Web. RSS (Really Simple Syndication) est un format standard pour publier des articles de blog, des actualités, du contenu audio et vidéo fréquemment mis à jour. De nombreux sites Web proposent des fonctions d'abonnement RSS, permettant aux utilisateurs d'obtenir facilement les dernières informations. Dans cet article, nous allons apprendre à utiliser PHP et XML pour mettre en œuvre les fonctions de gestion des abonnements RSS et d'affichage du site Internet. Tout d'abord, nous devons créer un abonnement RSS à XM

Application PHP : obtenez le contenu de l'abonnement RSS via la fonction Application PHP : obtenez le contenu de l'abonnement RSS via la fonction Jun 20, 2023 pm 06:25 PM

Avec le développement rapide d'Internet, de plus en plus de sites Web ont commencé à proposer des services d'abonnement RSS, permettant aux utilisateurs d'obtenir facilement du contenu mis à jour à partir du site Web. En tant que langage de script côté serveur populaire, PHP dispose de nombreuses fonctions de traitement des abonnements RSS, permettant aux développeurs d'extraire facilement les données requises des sources RSS. Cet article explique comment utiliser les fonctions PHP pour obtenir du contenu d'abonnement RSS. 1. Qu'est-ce que RSS ? Le nom complet de RSS est « ReallySimpleSyndication » (abrégé

Comment écrire un simple abonné RSS via PHP Comment écrire un simple abonné RSS via PHP Sep 25, 2023 pm 07:05 PM

Comment écrire un simple abonné RSS via PHP RSS (ReallySimpleSyndication) est un format utilisé pour s'abonner au contenu d'un site Web. Grâce à l'abonné, vous pouvez obtenir les derniers articles, actualités, blogs et autres mises à jour. Dans cet article, nous allons écrire un simple abonné RSS utilisant PHP pour démontrer comment obtenir et afficher le contenu d'un flux RSS. Confirmer l'environnement et la préparation Avant de commencer, assurez-vous d'avoir un environnement PHP et d'avoir installé l'extension SimpleXML.

Comment utiliser PHP pour implémenter la fonction d'abonnement RSS Comment utiliser PHP pour implémenter la fonction d'abonnement RSS Sep 05, 2023 pm 04:43 PM

Comment utiliser PHP pour implémenter la fonction d'abonnement RSS RSS (ReallySimpleSyndication) est un format utilisé pour publier et s'abonner au contenu mis à jour d'un site Web. Grâce au RSS, les utilisateurs peuvent facilement obtenir les dernières informations sur les sites Web qui les intéressent sans avoir à visiter régulièrement le site Web. Dans cet article, nous apprendrons comment implémenter la fonctionnalité d'abonnement RSS à l'aide de PHP. Tout d’abord, nous devons comprendre la structure de base du RSS. Un document RSS typique se compose d'un ou plusieurs éléments

Explorer les flux RSS d'autres sites Web en utilisant PHP Explorer les flux RSS d'autres sites Web en utilisant PHP Jun 13, 2023 pm 02:55 PM

Alors que le contenu Internet continue de s'enrichir et de se diversifier, de plus en plus de personnes commencent à utiliser la technologie RSS pour s'abonner aux blogs, aux actualités et à tout autre contenu qui les intéresse, afin de ne plus manquer aucune information importante. En tant que l'un des langages de programmation couramment utilisés dans le développement Web, PHP fournit également des fonctions et des outils puissants pour nous aider à explorer les abonnements RSS d'autres sites Web et à les afficher sur notre propre site Web. Cet article explique comment utiliser PHP pour explorer les abonnements RSS d'autres sites Web et les analyser en tableaux ou en objets.

Intégration des données XML / RSS: Guide pratique pour les développeurs et les architectes Intégration des données XML / RSS: Guide pratique pour les développeurs et les architectes Apr 02, 2025 pm 02:12 PM

L'intégration de données XML / RSS peut être réalisée en analysant et en générant des fichiers XML / RSS. 1) Utilisez la bibliothèque XML.ETREE.ElementTree ou FeedParser de Python pour analyser les fichiers XML / RSS et extraire les données. 2) Utilisez ElementTree pour générer des fichiers XML / RSS et ajouter progressivement les nœuds et les données.

Implémenter la fonction d'abonnement RSS en utilisant PHP et XML Implémenter la fonction d'abonnement RSS en utilisant PHP et XML Aug 09, 2023 pm 08:13 PM

Utilisation de PHP et XML pour implémenter la fonction d'abonnement RSS RSS (ReallySimpleSyndication) est un format standard pour la publication et l'abonnement aux mises à jour de sites Web. Il est basé sur XML et obtient le contenu le plus récent via le lecteur RSS de l'abonné. Dans cet article, nous présenterons comment utiliser PHP et XML pour implémenter une simple fonction d'abonnement RSS. Créer un fichier XML Tout d'abord, nous devons créer un fichier XML pour stocker le contenu que nous souhaitons publier. Supposons que nous voulions publier un texte

Tutoriel Advanced XML / RSS: Ace votre prochain entretien technique Tutoriel Advanced XML / RSS: Ace votre prochain entretien technique Apr 06, 2025 am 12:12 AM

XML est un langage de balisage pour le stockage et l'échange de données, et RSS est un format basé sur XML pour la publication du contenu mis à jour. 1. XML définit les structures de données, adaptées à l'échange de données et au stockage. 2.RSS est utilisé pour l'abonnement de contenu et utilise des bibliothèques spéciales lors de l'analyse. 3. Lors de l'analyse du XML, vous pouvez utiliser DOM ou SAX. Lors de la génération de XML et de RSS, les éléments et les attributs doivent être définis correctement.

See all articles