16-03-2017, 10:28 AM
Hola , tengo un sitio web en php que me crea una cookie , seria posible abrir esta cookie en python y leer su contenido ? si es asi como tendria que hacerlo?
Leer contenido de una cookie
|
16-03-2017, 10:28 AM
Hola , tengo un sitio web en php que me crea una cookie , seria posible abrir esta cookie en python y leer su contenido ? si es asi como tendria que hacerlo?
Hola, puedes usar la librería requests que aunque no pertenece a la librería estándar de Python es de las más usadas en la comunidad.
Código: >>> import requests (Un artículo sobre requests es todavía una tarea pendiente). También es asequible vía el módulo urllib, pero requests siempre simplifica las cosas. Saludos.
¡No te pierdas nuestro curso oficial en Udemy para aprender Python, bases de datos SQL, orientación a objetos, tkinter y mucho más!
También ofrecemos consultoría profesional de desarrollo en Python para personas y empresas.
Me da este error , alguna idea ?
AttributeError: 'module' object has no attribute 'open' Intento para las pruebas leer una cookie local que he generado , La cookie se llama test y este es el codigo import requests r = requests.get("http://localhost") cookies=r.cookies print cookies['Test'] Y este el error Traceback (most recent call last): File "C:\Python27\Proyectos\cookies.py", line 6, in <module> print cookies['Test'] File "C:\Python27\lib\site-packages\requests\cookies.py", line 329, in __getitem__ return self._find_no_duplicates(name) File "C:\Python27\lib\site-packages\requests\cookies.py", line 400, in _find_no_duplicates raise KeyError('name=%r, domain=%r, path=%r' % (name, domain, path)) KeyError: "name='Test', domain=None, path=None"
16-03-2017, 07:44 PM
El error fue mío, la función correcta es requests.get.
Con respecto a lo último, puede que el nombre de la cookie sea incorrecto. ¿Es "test" o "Test"? ¿Cómo la estás generando? Puedes hacer una prueba con el foro: Código: >>> import requests Saludos.
¡No te pierdas nuestro curso oficial en Udemy para aprender Python, bases de datos SQL, orientación a objetos, tkinter y mucho más!
También ofrecemos consultoría profesional de desarrollo en Python para personas y empresas.
Es Test , esta bien escrita , si la busco en el navegador tengo esto
Nombre: Test Contenido: LEER_DNI Dominio: localhost Ruta: / Enviar para: Cualquier tipo de conexión Accesible para secuencia de comandos: Sí Creado: jueves, 16 de marzo de 2017, 21:15:03 Caduca: Al finalizar la sesión de navegación No cierro el navegador Tengo esto mismo con una cookie en pruebasfran.hol.es que se llama TestCookie y me da el mismo error La unica diferencia que veo con la tuya es la mia es accesible para secuencia de comandos y la tuya no . La cookie en pruebas se genera en http://pruebasfran.hol.es/dni.php Te agredeceria mucho si le echas un vistazo
Bien, en ese caso el código debería ser:
Código: >>> import requests Cabe aclarar que esto es independiente del navegador. Requests no puede acceder a las cookies generadas por Firefox, Chrome u otro similar (puede que haya algún método para esto pero lo desconozco).
¡No te pierdas nuestro curso oficial en Udemy para aprender Python, bases de datos SQL, orientación a objetos, tkinter y mucho más!
También ofrecemos consultoría profesional de desarrollo en Python para personas y empresas.
17-03-2017, 08:19 AM
Ok , ahora si funciona , pero no es esto lo que pretendo , lo que yo necesito es saber si la cookie existe , no en el servidor , cuando en la pagina php se pulsa sobre el boton siguiente se genera la cookie y lo que yo necesito es acceder a la cookie local y comprobar si contiene LEER_DNI.
Puedes chequear browsercookie que permite leer cookies almacenadas por Firefox o Chrome. Aquí hay un ejemplo con Chrome:
Código: >>> import browsercookie (Lo instalas vía pip install browsercookie). No tuve mucha suerte con Firefox, habría que ver si el módulo soporta las versiones más recientes. Espero que te sirva. Saludos.
¡No te pierdas nuestro curso oficial en Udemy para aprender Python, bases de datos SQL, orientación a objetos, tkinter y mucho más!
También ofrecemos consultoría profesional de desarrollo en Python para personas y empresas.
17-03-2017, 05:54 PM
Me da este error al probar tu codigo :
Traceback (most recent call last): File "C:\Python27\q.py", line 47, in <module> cj = browsercookie.chrome() File "C:\Python27\lib\site-packages\browsercookie\__init__.py", line 201, in chrome return Chrome(cookie_file).load() File "C:\Python27\lib\site-packages\browsercookie\__init__.py", line 72, in __init__ self.tmp_cookie_file = create_local_copy(cookie_file) File "C:\Python27\lib\site-packages\browsercookie\__init__.py", line 43, in create_local_copy raise BrowserCookieError('Can not find cookie file at: ' + cookie_file) BrowserCookieError: Can not find cookie file at: C:\Users\Antonio\AppData\Roaming\..\Local\Google\Chrome\User Data\Default\Cookies
17-03-2017, 06:14 PM
¿Tienes Chrome instalado? ¿Ingresaste a la web antes de ejecutar el código? Aquí encontré un fork un poco más actualizado, puedes chequearlo.
¡No te pierdas nuestro curso oficial en Udemy para aprender Python, bases de datos SQL, orientación a objetos, tkinter y mucho más!
También ofrecemos consultoría profesional de desarrollo en Python para personas y empresas. |
« Tema anterior | Tema siguiente »
|