URLLIB Blocage mot de passe comment détecter [PYTH] (résolu) - Python - Programmation
Marsh Posté le 14-05-2016 à 22:37:39
Tu peux donner un exemple concret de site? Selon cet article (en français) urllib2 retourne un code d'erreur (401) en cas de nécessité d'authentification.
Marsh Posté le 15-05-2016 à 06:29:56
ReplyMarsh Posté le 18-05-2016 à 19:16:44
voila l'adresse d'un site qui me balance une fenetre "mot de passe" sous mozilla et qui bloque Python au bout de la Nème image:
https://nddlagirdesobeir.noblogs.org
la dernière réaction de python :
(désolé je mets toutes les images qu'il a attrapées)
pour info, la description est lue avant l'image: si j'ai une image dans le code de la page, je recherche un texte autour ou un titre ou une description. ensuite je télécharge l'image
Code :
|
Marsh Posté le 18-05-2016 à 19:53:39
erwan83 a écrit : voila l'adresse d'un site qui me balance une fenetre "mot de passe" sous mozilla |
Effectivement, mais c'est pas pour le site mais pour une seule image: http://www.midinews.com/data/image [...] b7d427.jpg
Selon l'article en haut la lib est censée retourner un code d'erreur qu'on peut utiliser pour ignorer cette image - je testerai si j'ai le temps (et si je m'en sors avec Python que je ne maîtrise pas).
Par contre, tu es sûr que c'est légal ton truc?
EDIT: Python 2 ou 3?
Marsh Posté le 18-05-2016 à 20:46:53
rat de combat a écrit : |
Google est-il légal ?
Warffff
Python 2.7.6
Code :
|
C'est probablement dans ce pack que se passe le blocage. J'avais déjà des problèmes avec urllib2 pour attraper des images alors je suis passé par urllib qui me renvoie moins d'erreurs.
Marsh Posté le 18-05-2016 à 20:47:02
C'est le répertoire data qui est protégé par un htacess, pas l"image.
Suffit d'ignorer le répertoire, et dans le script suffit d'un délai pour passer à la suivante si la requête dure trop longtemps devrait faire l'affaire.
Marsh Posté le 18-05-2016 à 20:47:30
Bon ben c'est facile ce language...
J'ai utilisé http://www.pythonforbeginners.com/ [...] -in-python et Python 2.7, le code suivant fonctionne très bien, si il y a une erreur l'image est simplement ignorée. Je précise que c'est du code de débutant (même pas ), c'est juste pour prouver que ça marche.
Code :
|
Code :
|
Remarque: Dans notre cas "We failed to reach a server." c'est pas vraiment vrai mais peu importe, c'est du code que j'ai copié et qu'il serait facile de corriger.
Marsh Posté le 18-05-2016 à 20:51:59
Intéressant effectivement...
On va dire que le sujet est résolu !
Merci
Marsh Posté le 18-05-2016 à 21:26:07
J'étais trop restrictif sur les types d'erreur.
Code :
|
Marsh Posté le 30-05-2016 à 18:12:52
Bon me revoilà j'ai encore un problème !
Je suis passé à Python 2.7.11 (rien de révolutionnaire)
Sauf que :
except URLError, eObject:
NameError: name 'URLError' is not defined
Normalement dans le code URLError devrait être coloré mais là il reste en noir, signe évident que Python ne le reconnait plus !!!!!
Any idea ?
Marsh Posté le 30-05-2016 à 18:41:40
Je vois pas pourquoi il te jetterait pas une erreur à la face à l'import si URLError n'existait pas.
T'es sûr que tu l'as bien importé au moins ?
Marsh Posté le 30-05-2016 à 19:04:39
Heu.... Suis obligé de taper:
from urllib2 import URLError ??
import urllib2 ne suffit pas ?
Je sens que je vais me faire taper dessus
Marsh Posté le 30-05-2016 à 19:51:20
Bah oui
Mais si tu veux passer par urllib2 (sans importer URLError), faudra que tu écrives urllib2.URLError à la place, à toi de voir, mais le 1er est plus court à écrire.
Marsh Posté le 14-05-2016 à 21:25:27
Bonjour, je télécharge des images depuis internet
code html <IMG SRC etc etc> et je télécharge l'image avec
Le code est un peu mis à l'arrache mais c'est à peu pres ça
en cas d'erreur avec URLLIB je lance une boucle qui utilise URLLIB2
ERREUR rencontrée de temps en temps qui arrête tout:
Vous devez taper votre nom utilisateur pour accéder à http machin.com
je tape ENTREE
Merci de taper le mot de passe pour accéder à http machin.com
Donc à un moment quelque part dans ces boucles j'ai ce message qui s'affiche mais ça ne génère aucune ERREUR PYTHON, sauf que ça arrête tout
Une idée ??
Message édité par erwan83 le 02-06-2016 à 14:42:52