Facebook pixel
>Blog>Programação
Programação

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.

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:

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada
    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).

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada
    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.

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada

Sobre o autor

A melhor plataforma para aprender tecnologia no Brasil

A Awari é a melhor maneira de aprender tecnologia no Brasil.
Faça parte e tenha acesso a cursos com aulas ao vivo e mentorias individuais com os melhores profissionais do mercado.