Fonction extraire liens html
Bonjour à tous,
J'ai un exercice à faire :

1. Ecrire une fonction extraire_liens(page) retournant la liste des liens HTTP présents dans le contenu de la page. Pour rappel, la structure d'une balise contenant un lien est: <a href= http...." ...>
J'ai fait ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
def extraire_liens(page):
 
    from bs4 import BeautifulSoup
 
    from urllib.request import urlopen
 
    from urllib import parse
 
 
    url = "https://www.iedparis8.net/"
 
 
    page = BeautifulSoup(urlopen(url), 'html.parser')
 
 
    for liens in page.find_all('a'):
 
        print(liens.get('href'))

Comment faire pour que ma fonction soit plus sélective, je voudrais des URL Absolues.


2. On souhaite nettoyer la page des différentes balises HTML qui s'y trouvent (une balise commence par le caractère '<' et termine par '>'). Vous devez réaliser une fonction nettoie_page(page) dont le rôle est de supprimer les balises HTML du contenu.
J'ai fait ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
import re
 
def nettoie_page(page):
    page = re.compile(r'<.*?>')
 
    return page('' ", page)
Merci beaucoup pour votre aide.
F.