Como usar o módulo requests do Python para fazer requisições HTTP
Como Escrever Requisições HTTP com Python Requests Este artigo ensina como utilizar o módulo requests do Python para fazer requisições HTTP.
Glossário
Instalando o módulo requests do Python
Para utilizar o módulo requests do Python e realizar requisições HTTP, é necessário instalá-lo previamente. Felizmente, a instalação do módulo é bastante simples e direta.
Instalação do módulo requests
Existem diferentes formas de instalar o módulo requests, mas a mais recomendada é utilizar o gerenciador de pacotes pip. Certifique-se de ter o Python e o pip devidamente instalados em sua máquina antes de prosseguir. Em seguida, abra o terminal e execute o seguinte comando:
pip install requests
Após a execução do comando, o pip irá baixar e instalar o módulo requests do Python em seu ambiente. Aguarde o processo ser concluído e verifique se a instalação foi bem-sucedida executando um trecho de código de teste.
Utilizando o módulo requests
Agora que temos o módulo requests instalado, podemos começar a fazer requisições HTTP de forma simples e eficiente. O módulo requests nos fornece diversas funcionalidades para enviar requisições HTTP, como GET, POST, PUT, DELETE, entre outras.
Fazendo uma requisição GET
Para fazer uma requisição HTTP básica utilizando o módulo requests do Python, primeiro importamos o módulo em nosso código:



import requests
Em seguida, utilizamos a função correspondente ao tipo de requisição desejada. Por exemplo, para fazer uma requisição GET, utilizamos a função requests.get()
. Podemos fornecer a URL desejada como parâmetro para essa função:
response = requests.get("https://www.example.com")
O módulo requests irá enviar a requisição GET para a URL especificada e armazenar a resposta na variável response
. Podemos então acessar diferentes informações dessa resposta, como o código de status, o conteúdo da resposta, headers, entre outros.
status_code = response.status_code
content = response.text
headers = response.headers
Enviando dados junto com a requisição
Podemos também enviar dados junto com a requisição, como parâmetros de consulta ou dados POST. Basta fornecer esses dados como argumentos adicionais para as funções correspondentes:
response = requests.get("https://www.example.com", params={"key": "value"})
response = requests.post("https://www.example.com", data={"key": "value"})
Passando parâmetros e headers nas requisições HTTP usando o módulo requests do Python
Além de enviar dados na requisição, o módulo requests do Python permite a passagem de parâmetros e headers personalizados. Isso é útil quando precisamos enviar informações específicas para o servidor, como parâmetros de busca ou informações de autenticação.
Enviando parâmetros na requisição
Para enviar parâmetros na requisição, podemos utilizar o argumento params
. Por exemplo, se desejamos realizar uma busca por um termo específico, podemos fazer da seguinte maneira:
response = requests.get("https://www.example.com/search", params={"q": "python requests"})
Nesse exemplo, estamos passando o parâmetro q
com o valor “python requests” para a URL de busca. O módulo requests irá automaticamente formatar a URL corretamente, adicionando o parâmetro como uma query string.
Enviando headers personalizados na requisição
Já para enviar headers personalizados, utilizamos o argumento headers
. Podemos passar um dicionário com os headers desejados para a função correspondente:
headers = {
"User-Agent": "MeuNavegador/1.0",
"Authorization": "Bearer mytoken"
}
response = requests.get("https://www.example.com", headers=headers)
Dessa forma, estamos passando dois headers personalizados, “User-Agent” e “Authorization”, para a requisição. Esses headers serão enviados juntamente com a requisição HTTP.
Lidando com respostas e erros no módulo requests do Python para requisições HTTP
Ao realizar uma requisição utilizando o módulo requests do Python, é importante saber como lidar com as respostas e possíveis erros que possam ocorrer.
Analisando a resposta
Após enviar uma requisição, podemos verificar o código de status da resposta utilizando a propriedade status_code
do objeto response
. Alguns códigos de status comuns são 200 (OK), 404 (Not Found) e 500 (Internal Server Error).



if response.status_code == 200:
print("Requisição bem-sucedida!")
elif response.status_code == 404:
print("Página não encontrada.")
else:
print("Ocorreu um erro na requisição.")
Também é possível acessar o conteúdo da resposta utilizando a propriedade text
do objeto response
. Essa propriedade retorna o conteúdo da resposta como uma string. Podemos então processar esse conteúdo de acordo com nossas necessidades.
content = response.text
print(content)
Tratando erros
Caso ocorra algum erro na requisição, como problemas de conexão ou timeouts, o módulo requests pode lançar uma exceção do tipo requests.exceptions.RequestException
. Podemos utilizar um bloco try
/ except
para tratar essas exceções e realizar ações específicas em caso de erro.
try:
response = requests.get("https://www.example.com")
response.raise_for_status() # Lança exceção se ocorrer um erro na requisição
except requests.exceptions.RequestException as e:
print("Ocorreu um erro na requisição:", str(e))
Conclusão
O módulo requests do Python é uma poderosa ferramenta para realizar requisições HTTP de forma simples e eficiente. Neste artigo, aprendemos como instalar o módulo requests, fazer requisições HTTP básicas, passar parâmetros e headers personalizados, e lidar com respostas e erros.
Ao utilizar o módulo requests, lembre-se de sempre verificar o código de status da resposta e tratar possíveis erros de maneira adequada. Além disso, é importante ler a documentação oficial do módulo para conhecer todas as funcionalidades disponíveis e explorar todo o potencial dessa biblioteca.
Agora que você sabe como usar o módulo requests do Python para fazer requisições HTTP, aproveite esse conhecimento para desenvolver aplicações web mais robustas e interativas.
A Awari é a melhor plataforma para aprender sobre programação no Brasil.
Aqui você encontra cursos com aulas ao vivo, mentorias individuais com os melhores profissionais do mercado e suporte de carreira personalizado para dar seu próximo passo profissional e aprender habilidades como Data Science, Data Analytics, Machine Learning e mais.
Já pensou em aprender de maneira individualizada com profissionais que atuam em empresas como Nubank, Amazon e Google? Clique aqui para se inscrever na Awari e começar a construir agora mesmo o próximo capítulo da sua carreira em dados.


