Urllib : erreur 403 sur un site

Résolu/Fermé
cs_perrierbertrand Messages postés 36 Date d'inscription lundi 25 août 2003 Statut Membre Dernière intervention 21 juillet 2024 - 11 janv. 2023 à 15:36
yg_be Messages postés 23288 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 octobre 2024 - 11 janv. 2023 à 15:54

Bonjour,

j'ai un problème avec urllib

>>> a=urllib.request.urlopen("https://www.free.fr").read()
>>> a=urllib.request.urlopen("https://www.allocine.fr/dvd/nouveau").read()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.10/urllib/request.py", line 216, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.10/urllib/request.py", line 525, in open
    response = meth(req, response)
  File "/usr/lib/python3.10/urllib/request.py", line 634, in http_response
    response = self.parent.error(
  File "/usr/lib/python3.10/urllib/request.py", line 563, in error
    return self._call_chain(*args)
  File "/usr/lib/python3.10/urllib/request.py", line 496, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.10/urllib/request.py", line 643, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 403: Forbidden

avec free.fr ça fonctionne mais pas avec la page https://www.allocine.fr/dvd/nouveau/

est-ce que ça fonctionne chez vous ? ais-je été blacklisté ?

merci


Linux / Firefox 108.0


3 réponses

xHaMaz Messages postés 108 Date d'inscription mardi 3 janvier 2023 Statut Membre Dernière intervention 23 avril 2023 14
11 janv. 2023 à 15:39

Bonjour,

Y'a des sites qui utilise des mécanismes de protection contre les requêtes automatisées et bloque les requêtes provenant des scripts.

0
yg_be Messages postés 23288 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 octobre 2024 Ambassadeur 1 548
Modifié le 11 janv. 2023 à 15:42

bonjour, j'obtiens aussi cette erreur 403.

0
cs_perrierbertrand Messages postés 36 Date d'inscription lundi 25 août 2003 Statut Membre Dernière intervention 21 juillet 2024 1
11 janv. 2023 à 15:46

merci pour vos réponse

la solution est de préciser l'user agent dans urllib

request_site = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"})
code_page_html = urllib.request.urlopen(request_site).read()

0
yg_be Messages postés 23288 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 octobre 2024 1 548
11 janv. 2023 à 15:54

peux-tu alors marquer la discussion comme résolue?

0