CodeGym /Curso Java /Python SELF PT /Trabalhando com Rede

Trabalhando com Rede

Python SELF PT
Nível 23 , Lição 2
Disponível

3.1 Módulo requests

Para o trabalho básico com a internet no Python, existe a biblioteca requests. Ela oferece uma interface conveniente para trabalhar com a rede, permitindo enviar requisições HTTP e receber respostas com o mínimo de esforço.

Essa biblioteca não vem junto com o Python, então antes de usá-la, tu precisas instalar ela com o gerenciador de pacotes.

Abre teu terminal e digita:


pip install requests
        

Depois de instalar a biblioteca, tu podes usar o módulo requests nos teus projetos. Por exemplo, é assim que tu podes definir teu endereço IP externo:


import requests

response = requests.get("http://ip.jsontest.com/")
print(response.status_code)  # Exibe o código de status da resposta
print(response.json())       # Exibe a resposta em JSON

Aqui enviamos uma requisição para o serviço (site) ip.jsontest.com, que retorna um objeto JSON com o endereço IP de onde a requisição foi feita. A requisição e a obtenção da resposta é feita em uma linha — isso é muito conveniente. Nas outras linhas, apenas imprimimos a resposta do servidor.

No exemplo acima, chamamos o método get(), logo abaixo vou falar sobre esse método e outros métodos do objeto requests.

3.2 Lista de métodos

O objeto requests tem métodos para todas as ocasiões, ou melhor dizendo, um método para cada tipo de requisição HTTP.

Método Descrição
requests.get() Envia uma requisição GET para obter dados do servidor.
requests.post() Envia uma requisição POST para enviar dados ao servidor.
requests.put() Envia uma requisição PUT para atualizar dados no servidor.
requests.delete() Envia uma requisição DELETE para deletar dados do servidor.
requests.head() Envia uma requisição HEAD para obter cabeçalhos sem o corpo da resposta.
requests.options() Envia uma requisição OPTIONS para obter métodos e parâmetros suportados pelo servidor.
requests.patch() Envia uma requisição PATCH para atualização parcial de dados no servidor.
requests.request() Método principal para enviar todos os tipos de requisições HTTP.

A seguir, vamos examinar os mais importantes deles.

3.3 Enviando requisição GET e requisição POST

Requisição GET geralmente consiste apenas de uma URL, ou pode conter uma string adicional de parâmetros.

1. Enviando uma requisição GET simples

Requisição GET é usada para obter dados do servidor. O parâmetro obrigatório é a URL para onde a requisição será enviada.

Exemplo:


import requests

response = requests.get('https://jsonplaceholder.typicode.com/posts')
print(response.status_code)  # Exibe o código de status da resposta
print(response.json())       # Exibe a resposta em JSON

2. Enviando requisição GET com parâmetros

A URL também pode conter parâmetros adicionais na forma da string key=value&key2=value2&…

No nosso caso, os parâmetros são passados na forma de um dicionário e uma variável params:


import requests

params = {'userId': 1}
response = requests.get('https://jsonplaceholder.typicode.com/posts', params=params)
print(response.json())

3. Enviando requisição POST

Requisição POST pode conter um corpo da requisição: texto, JSON ou até mesmo uma imagem.

Exemplo:


import requests

data = {
    'title': 'foo',
    'body': 'bar',
    'userId': 1
}
response = requests.post('https://jsonplaceholder.typicode.com/posts', json=data)
print(response.status_code)
print(response.json())

3.4 Enviando requisição PUT e requisição DELETE

1. Enviando requisição PUT

Requisição PUT é usada para atualizar dados no servidor.


import requests

data = {
    'title': 'foo',
    'body': 'bar',
    'userId': 1
}
response = requests.put('https://jsonplaceholder.typicode.com/posts/1', json=data)
print(response.status_code)
print(response.json())

2. Enviando requisição DELETE

Requisição DELETE é usada para deletar dados do servidor.


import requests

response = requests.delete('https://jsonplaceholder.typicode.com/posts/1')
print(response.status_code)
print(response.json())

Para entender melhor a essência das requisições GET, POST, PUT e DELETE, tu precisas ler as palestras sobre o funcionamento da rede, internet, web e HTTP. Tudo isso te espera em um futuro próximo.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION