[PYTHON] Modulo request

Iniciado por dimineko, 12 Mayo 2019, 21:20 PM

0 Miembros y 1 Visitante están viendo este tema.

dimineko

Hola! Mi problema es el siguiente.
Mi script (que su objetivo es comprobar si un usuario esta cogido o libre) realiza un get al perfil de un usuario de instagram. El problema es que siempre devuelve el mismo codigo de estado.(200,el cual significa que está cogido,en cierta manera)
Sin embargo,si abro la terminal de cmd con python y hago un get a un usuario existente(motogp)
Código (python) [Seleccionar]
requests.get("https://instagram.com/motogp") me devuelve correctamente 200,sin embargo si lo hago a un usuario que no existe...
Código (python) [Seleccionar]
requests.get("https://instagram.com/n0mbr3al3at0r10ahasha") me devuelve 404,es decir,funciona bien en la terminal.Pero en mi script,no.¿por qué?un saludo.


script:
Código (python) [Seleccionar]
import requests
import time
import os
#lista_codigos_status = "https://developer.mozilla.org/es/docs/Web/HTTP/Status"
print ("200=COGIDO \n404= LIBRE")
usuarios = ["motogp","sdfghjtrlokr","uhfdhjfjfjfslfk","hjfdjhksfjhk999","cabromotor","jdjdjdddjdjdlouih"]
for usuario in usuarios:
r = requests.get("https://instagram.com/",usuario)
if r.status_code == 200:
print (usuario," --- este usuario esta C O G I D O","CODIGO: ",r.status_code)
elif r.status_code == 404:
print (usuario," --- este usuario esta L I B R E","CODIGO: ",r.status_code)
else:
print ("ERROR")

tincopasan

por mi parte cambiaría:
Código (python) [Seleccionar]

for usuario in usuarios:
    dire="https://instagram.com/"+ usuario
    r = requests.get(dire)