Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

No se pueden subir los datos

Buenas noches,

No se pueden subir los datos siguiendo las instrucciones del profesor. Pasa lo siguiente:

¿Podrían por favor guiarme en como solucionar esto para poder continuar con el curso? Gracias.

SSLError Traceback (most recent call last) /usr/lib/python3.10/urllib/request.py in do_open(self, http_class, req, **http_conn_args) 1347 try: -> 1348 h.request(req.get_method(), req.selector, req.data, headers, 1349 encode_chunked=req.has_header('Transfer-encoding'))

23 frames SSLError: [SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED] unsafe legacy renegotiation disabled (_ssl.c:1007)

During handling of the above exception, another exception occurred:

URLError Traceback (most recent call last) /usr/lib/python3.10/urllib/request.py in do_open(self, http_class, req, **http_conn_args) 1349 encode_chunked=req.has_header('Transfer-encoding')) 1350 except OSError as err: # timeout error -> 1351 raise URLError(err) 1352 r = h.getresponse() 1353 except:

URLError: <urlopen error [SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED] unsafe legacy renegotiation disabled (_ssl.c:1007)>

2 respuestas
solución!

También tuve ese error. Creo que puede ser un problema de Colab, ya que puedo comunicarme con la API sin problema desde el Python de mi máquina.

¿Qué hice? Por lo pronto obtuve el dataframe desde mi máquina, exporté los nombres a dos archivos para al final subirlos a Colab.

Hola estimados estudiantes

Es un problema en la página web y no en el código, el certificado ssl de colab no acepta el certificado de este site, por eso que fuera de colab sí funciona pero dentro de Colab no, la solución es reemplazar el link del json de lectura.

Reemplazar

nombres_m = pd.read_json("https://servicodados.ibge.gov.br/api/v1/censos/nomes/ranking?sexo=M&qtd=200")
nombres_f = pd.read_json("https://servicodados.ibge.gov.br/api/v1/censos/nomes/ranking?sexo=F&qtd=200")

Por:

df = pd.read_json("https://raw.githubusercontent.com/ElProfeAlejo/tratamiento_datos_python/main/ranking.json")
nombres_m = df[df['sexo'] == 'M'].sample(200)
nombres_f = df[df['sexo'] == 'F'].sample(200)

Si este post te ayudó, por favor, marca como solucionado ✓.