CodeGym /Cursos /Python SELF PT /Trabalhando com APIs públicas

Trabalhando com APIs públicas

Python SELF PT
Nível 24 , Lição 3
Disponível

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')
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION