Erro de SSL: routines:: unsafe legacy renegotiation disabled

Pessoal, boa tarde!

Estou a dias tentando fazer um webscrap deste site.

Mas não consigo nem fazer a conexão via R ou Python. Quando abro nos navegadores, ele abre normal.

Os erros que eu tenho são esses: Error in open.connection(x, "rb"): error:0A000152:SSL routines::unsafe legacy renegotiation disabled.

Já tentei baixar os certificados do chrome e adicionar na pasta dos arquivos, igual falam aqui. Mas não mudou nada

Meu script em R:

# Definindo url
url <- "https://cnae.ibge.gov.br/?view=secao&tipo=cnae&versaosubclasse=10&versaoclasse=7&secao=A"

# Configurando proxy
#httr::set_config(httr::use_proxy(url = url, port = 8080))

sessao_inicial <- httr::GET(url)
#> Error in curl::curl_fetch_memory(url, handle = handle): error:0A000152:SSL routines::unsafe legacy renegotiation disabled

page = rvest::read_html(url)
#> Error in open.connection(x, "rb"): error:0A000152:SSL routines::unsafe legacy renegotiation disabled

Meu script em Python

import requests

concla = requests.get('https://cnae.ibge.gov.br/?view=secao&tipo=cnae&versaosubclasse=10&versaoclasse=7&secao=A', verify="scripts/certificado_para_webscrap.pem")

#SSLError: HTTPSConnectionPool(host='cnae.ibge.gov.br', port=443): 
#Max retries exceeded with url: /?view=secao&tipo=cnae&versaosubclasse=10&versaoclasse=7&secao=A 
#(Caused by SSLError(SSLError(1, '[SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED] unsafe legacy renegotiation disabled
#(_ssl.c:997)')))

Estou usando o Pop 22.04.

Em um teste rápido o código abaixo funciona corretamente.

from requests import get as gt

r = gt("https://cnae.ibge.gov.br/?view=secao&tipo=cnae&versaosubclasse=10&versaoclasse=7&secao=A")
print(r.status_code)

Note que não fiz uso do parâmetro verify à qual pode experimentar definir como False

1 curtida

Poxa, aqui não rolou :frowning:

>>> from requests import get as gt
>>> r = gt("https://cnae.ibge.gov.br/?view=secao&tipo=cnae&versaosubclasse=10&versaoclasse=7&secao=A")
SSLError: HTTPSConnectionPool(host='cnae.ibge.gov.br', port=443): Max retries exceeded with url: /?view=secao&tipo=cnae&versaosubclasse=10&versaoclasse=7&secao=A (Caused by SSLError(SSLError(1, '[SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED] unsafe legacy renegotiation disabled (_ssl.c:997)')))

Experimente passar False para o parâmetro verify, ficando como abaixo.

requests.get('URL', verify=False)
1 curtida

Da o mesmo erro de cima :frowning:

Teste o código com o site abaixo.

Por aí dá certo !

import requests

concla = requests.get('https://cnae.ibge.gov.br/?view=secao&tipo=cnae&versaosubclasse=10&versaoclasse=7&secao=A')

print(concla.status_code)

#200

Estranho :S