9.1 Trabalhando com Google Maps API
Bora trabalhar um pouco com APIs públicas de serviços famosos.
Por exemplo, Google Maps API oferece vários serviços, como geocodificação, obter rotas e localização. Para usar Google Maps API, é preciso registrar uma chave API.
Geocodificação (obter coordenadas a partir de um endereço)
import requests
API_KEY = 'YOUR_GOOGLE_MAPS_API_KEY'
address = '1600 Amphitheatre Parkway, Mountain View, CA'
url = f'https://maps.googleapis.com/maps/api/geocode/json?address={address}&key={API_KEY}'
response = requests.get(url)
data = response.json()
if data['status'] == 'OK':
location = data['results'][0]['geometry']['location']
lat = location['lat']
lng = location['lng']
print(f'Coordenadas: {lat}, {lng}')
else:
print('Erro na geocodificação')
9.2 Trabalhando com OpenWeatherMap API
Outro exemplo legal é obter a previsão do tempo em qualquer lugar do mundo.
O serviço OpenWeatherMap API oferece dados meteorológicos no mundo todo. Para usar a API, você precisa se cadastrar e obter uma chave API.
Obter a previsão do tempo atual
import requests
API_KEY = 'YOUR_OPENWEATHERMAP_API_KEY'
city = 'London'
url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={API_KEY}&units=metric'
response = requests.get(url)
data = response.json()
if response.status_code == 200:
weather = data['weather'][0]['description']
temp = data['main']['temp']
print(f'Tempo em {city}: {weather}, temperatura: {temp}°C')
else:
print('Erro ao obter dados do tempo')
9.3 Trabalhando com GitHub API
Vocês são programadores, então vamos fazer algo mais voltado para TI. Por exemplo, podemos navegar por repositórios no GitHub.
GitHub API oferece acesso à informação sobre repositórios, usuários e organizações.
Obter informações sobre um repositório
import requests
repo_owner = 'octocat'
repo_name = 'Hello-World'
url = f'https://api.github.com/repos/{repo_owner}/{repo_name}'
response = requests.get(url)
data = response.json()
if response.status_code == 200:
print(f"Repositório: {data['name']}")
print(f"Descrição: {data['description']}")
print(f"Estrelas: {data['stargazers_count']}")
else:
print('Erro ao obter informações do repositório')
9.4 Trabalhando com YouTube Data API
YouTube Data API permite obter informações sobre vídeos, canais e playlists. Para usar a API, você precisa obter uma chave API.
import requests
API_KEY = 'YOUR_YOUTUBE_API_KEY'
video_id = 'Ks-_Mh1QhMc'
url = f'https://www.googleapis.com/youtube/v3/videos?id={video_id}&key={API_KEY}&part=snippet,contentDetails,statistics'
response = requests.get(url)
data = response.json()
if 'items' in data and len(data['items']) > 0:
video_info = data['items'][0]
title = video_info['snippet']['title']
views = video_info['statistics']['viewCount']
print(f'Título do vídeo: {title}')
print(f'Visualizações: {views}')
else:
print('Erro ao obter informações do vídeo')
Open Notify API oferece dados sobre a localização atual da Estação Espacial Internacional (ISS).
Obter a localização atual da ISS
import requests
url = 'http://api.open-notify.org/iss-now.json'
response = requests.get(url)
data = response.json()
if response.status_code == 200:
position = data['iss_position']
print(f"A ISS está nas coordenadas: longitude {position['longitude']}, latitude {position['latitude']}")
else:
print('Erro ao obter dados')
GO TO FULL VERSION