Comment écrire un script Python pour rechercher sur un site Web HTML les liens correspondants

StackOverflow https://stackoverflow.com/questions/2376798

  •  24-09-2019
  •  | 
  •  

Question

Je ne connais pas très bien Python et je dois écrire un script pour exécuter une multitude de fonctions.Fondamentalement, le module dont j'ai encore besoin est de savoir comment vérifier le code d'un site Web pour les liens correspondants fournis au préalable.

Était-ce utile?

La solution

Liens correspondants quoi ?Leur attribut HREF ?Le texte d'affichage du lien ?Peut-être quelque chose comme :

from BeautifulSoup import BeautifulSoup, SoupStrainer
import re
import urllib2

doc = urllib2.urlopen("http://somesite.com").read()
links = SoupStrainer('a', href=re.compile(r'^test'))
soup = [str(elm) for elm in BeautifulSoup(doc, parseOnlyThese=links)]
for elm in soup:
    print elm

Cela récupérera le contenu HTML de somesite.com puis analysez-le à l'aide de BeautifulSoup, en recherchant uniquement les liens dont l'attribut HREF commence par "test".Il crée ensuite une liste de ces liens et les imprime.

Vous pouvez modifier cela pour faire n'importe quoi en utilisant le Documentation.

Autres conseils

En général, vous utilisez urllib , urllib2 (htmllib etc) pour la programmation web en Python. vous pouvez aussi utiliser mécaniser , boucle etc. Ensuite, pour le traitement de HTML et d'obtenir des liens, vous voulez utiliser comme parseurs BeautifulSoup .

essayer scrapy, le cadre le plus complet d'extraction web.

http://scrapy.org

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top