Bonjour,

Je suis débutante en langage python. J'essaye de créé une fonction qui rassemble tous les liens/urls trouvés dans une page.

Voici ce que j'ai fait pour l'instant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
import requests 
 
def liens(page) :
    response = requests.get(page)
    data = response.text
    html = str(data) 
    for i in range(len(html)):
        if html[i] == '<' and html[i+1] == 'a' and html[i+3] == 'h':
            pos = html[i:].find('</a>')
            url = html[i: i+pos]
            urls = url.split('"')[1]
            if urls.startswith('http') == True :
                print (urls)
Celui - ci marche pour certains liens comme par exemple : https://www.google.fr ou bien https://www.python.org

Mais pour certains liens, la fonction affiche une erreur :"Index Out of range", comme par exemple : https://stackoverflow.com/questions/...on-web-crawler

Qu'est ce que je n'ai pas compris ?