Bonjour, bonsoir.
Je suis en train de créer un programme qui, à partir d'une liste, vérifie si des liens répondent à certaines exigences.
Grâce aux librairies requests et beautifoulsoup, si un site a une différence, je l'enregistre dans un fichier texte.

Fonctionnement (normal) du programme:
Va dans dans list.txt
Récupère le contenu et créé une liste[]
Dans un boucle
- Requests envoi la requête pour récupérer le contenu
- Beautifulsoup permet de scinder une partie qui différencie les liens
- Si une partie est présente dans le site -> On l'ajoute à ok.txt

Voilà mon problème:
Tous les liens de la liste sont testés SAUF qu'il n'y a que le dernier qui répond à un évaluation positive, exemple:
Le lien a.php est bon, le lien b.php n'est pas bon.

list.txt:
....
a.php
a.php
b.php
a.php

Résultat console python:
None
None
None
OK

Je me demande fortement la raison pour laquelle le code n'est pas "entièrement bon"
Je vous joint ci-dessous mon code:
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
19
 
import requests
from bs4 import BeautifulSoup
 
url = open('list.txt',"r")
a = url.readlines()
l = len(a)
 
z = 0
 
for i in range(1, l):
	z = z + 1
	r = requests.get(a[z])
	html = BeautifulSoup(r.content)
	lien = html.find('a', {'b' : 'c'})   # je n'ai pas mis les bons critères ici
	if len(str(lien)) > 4:
		save = open("ok.txt","a")
		save.write(str(a[z]))
		save.close()
J'espère que vous pourrez m'aider! Merci beaucoup