Quando você acessa esse link e clica sobre o CNPJ você é redirecionado para uma outra pagina, como estou trabalhando com requets estou fazendo o get, porem quando tento simular para acessar o link, ele gera um link e nesse link tem o parâmetro PK_PARTIC.
E não consigo encontra de forma nenhuma onde que gera esse valor para que eu possa dar sequência.
Se alguém poder me ajudar ficarei muito agradecido.
A diferença é que essa URL realiza um redirect e, se vc reparar no header Location do response, verá a URL para qual o rediracionamento é feito, e lá tem o ID do parâmetro PK_PARTIC.
Essa foi difícil. Para conseguir acessar a página do redirecionamento vc deve fazer assim:
URL (deve ser um POST):
POST https://cvmweb.cvm.gov.br/SWB/Sistemas/SCW/CPublica/CConsolFdo/ResultBuscaParticFdo.aspx?CNPJNome=15.862.867/0001-23&TpPartic=0&Adm=false&SemFrame=
Mas é o que estou dizendo, vc não deve passar no header esses valores: __VIEWSTATE, __VIEWSTATEGENERATOR, __EVENTVALIDATION, __EVENTTARGET, __EVENTARGUMENT. Eles devem ir no body da requisição POST, e não GET.
O bom de ajudar é que a gente acaba aprendendo uma coisa nova. Nunca tinha usado python (nunca me interessei na verdade), até aparecer essa sua dúvida. Então, já agradeço sua ajuda, vlw!
Consegui montar o código em python:
import requests
body = {
'__VIEWSTATE': '/wEPDwUKLTYyMzAzNTAxMA8WBB4DQWRtBQVmYWxzZR4FVG9kb3NnFgICAQ9kFgQCBw88KwAJAGQCCQ88KwAJAQAPFgQeCERhdGFLZXlzFgAeC18hSXRlbUNvdW50AgFkFgJmD2QWAgIBD2QWAmYPZBYGZg9kFgJmDw8WBB4LQ29tbWFuZE5hbWUFAjk1Hg9Db21tYW5kQXJndW1lbnQFBjEyOTIyMWQWAmYPFQESMTUuODYyLjg2Ny8wMDAxLTIzZAIBD2QWAmYPDxYEHwQFAjk1HwUFBjEyOTIyMWQWAmYPFQFNSUNBVFUgS0FESU1BIEZJRSBQUkVWSUTDik5DSUEgRkkgRU0gQ09UQVMgREUgRkkgTVVMVElNRVJDQURPIENSw4lESVRPIFBSSVZBRE9kAgIPZBYCZg8VAQJGSWRkI/irGxDBMroyYAki2pFnwoMly1l2+cBq+ONjTHcerv4=',
'__VIEWSTATEGENERATOR': 'C1E61A59',
'__EVENTVALIDATION': '/wEdAAPqgm+GxVgEzMBMePAbhYfIMg2H5XKsza2QwUUYDO3mJqoHrwEVH8tMxFxzyspxY/D1K9FeRSMcx1Gh0goDhgR9PDDroWGMzZYdX+Zy5NSasA==',
'__EVENTTARGET': 'ddlFundos$_ctl0$Linkbutton2',
'__EVENTARGUMENT': ''
}
response = requests.post(
f'https://cvmweb.cvm.gov.br/SWB/Sistemas/SCW/CPublica/CConsolFdo/ResultBuscaParticFdo.aspx?CNPJNome=15.862.867/0001-23&TpPartic=0&Adm=false&SemFrame=',
data = body
)
print(response.text)
Imagino que o código esteja bem tosco, mas fiz só para funcionar mesmo. Veja se tá ok. Abraços.
Pelo que fui lendo, o python é bem massa msm. O código ficou bem menor inclusive.