Consideremos el siguiente código Python:¿Por qué Google Search devuelve HTTP Error 403?
30 url = "http://www.google.com/search?hl=en&safe=off&q=Monkey" 31 url_object = urllib.request.urlopen(url); 32 print(url_object.read());
Cuando esto se ejecuta, se produce una excepción:
File "/usr/local/lib/python3.0/urllib/request.py", line 485, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 403: Forbidden
Sin embargo, cuando esto se pone en un navegador, los retornos de búsqueda como se esperaba. ¿Que está pasando aqui? ¿Cómo puedo superar esto para poder buscar Google programáticamente?
¿Alguna idea?
¿Tienes idea de lo que sucede debajo del capó? Tengo curiosidad ... ¿por qué url.read() no parece una lectura de navegador estándar? – AgentLiquid
¿qué clase de imbécil votaría esta publicación como "ofensiva"? –
En lugar de ir a través de las interfaces web, estas API acceden directamente al XML de búsqueda. Se conectan a una página diferente en Google, que le brinda datos en un formato diferente. Básicamente, recibía 403 porque no se le permitía acceder a los datos de la manera en que usted era, y Google lo sabía (...) –