Estou tentando usar a biblioteca Requests para enviar cookies com uma solicitação de postagem, mas não tenho certeza de como realmente configurar os cookies com base em sua documentação. O script deve ser usado na Wikipedia, e os cookies que precisam ser enviados têm este formato:
enwiki_session=17ab96bd8ffbe8ca58a78657a918558e; path=/; domain=.wikipedia.com; HttpOnly
No entanto, o requests
guia de início rápido da documentação é o único exemplo:
cookies = dict(cookies_are='working')
Como posso codificar um cookie como o acima usando esta biblioteca? Preciso fazer isso com a biblioteca de cookies padrão do python e enviar junto com a solicitação POST?
python
cookies
http-request
python-requests
Ricardo Altamirano
fonte
fonte
a=b;
pares. Em uma suposição, usea
como a chave eb
como o valor em um dicionário.Respostas:
A versão mais recente de Requests criará CookieJars para você a partir de dicionários simples.
Aproveitar :)
fonte
Apenas para estender a resposta anterior, se você estiver vinculando duas solicitações e quiser enviar os cookies retornados da primeira para a segunda (por exemplo, manter uma sessão ativa entre as solicitações), você pode fazer:
fonte
requests.session
exatamente para isso, armazenar cookies em várias sessões e, emsession
vez disso , fazer chamadas do objeto retornado .request.session
Se você deseja passar o cookie para o navegador, você deve anexar aos cabeçalhos para serem enviados de volta. Se você estiver usando wsgi:
Sou capaz de me autenticar com sucesso com Bugzilla e TWiki hospedados no mesmo domínio em que meu script wsgi python está sendo executado, passando o usuário / senha de autenticação para meu script python e passando os cookies para o navegador. Isso me permite abrir as páginas Bugzilla e TWiki no mesmo navegador e ser autenticado. Estou tentando fazer o mesmo com o SuiteCRM, mas estou tendo problemas com o SuiteCRM para aceitar os cookies de sessão obtidos do script python, embora tenha sido autenticado com êxito.
fonte