Você está aqui: Python ::: PyAutoGUI ::: Imagens e Processamento de Imagens

Como tirar um print da tela e salvar como PNG usando Python, PyAutoGUI, OpenCV e NumPy

Quantidade de visualizações: 2204 vezes
Nesta dica mostrarei como podemos combinar três bibliotecas muito úteis do Python para desenvolver uma aplicação que tira um print da tela e o salva como imagem. Em nosso caso a imagem será salva como PNG.

Se você ainda não tem esses módulos instalados no seu Python, aqui no site você encontrará o passo-a-passo sobre como instalar e testá-las devidamente.

Neste exemplo eu usei o método screenshot() do PyAutoGUI para tirar o print da tela. Em seguida usamos numpy.array() para converter o resultado em uma matriz do NumPy. Os passos seguintes foram o uso da função cvtColor() do OpenCV para converter a matriz em imagem e, finalmente, salvamos a imagem usando a função imwrite() do OpenCV.

Veja a seguir o código Python completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# vamos importar os módulos necessários
import cv2
import pyautogui
import numpy

# método principal
def main():
  # primeiro adquirimos o arquivo PIL
  arquivo_pil = pyautogui.screenshot()

  # convertemos o arquivo PIL para uma matriz da NumPy
  matriz_imagem = numpy.array(arquivo_pil)

  # agora construímos a imagem usando o método cvtColor() da OpenCV
  imagem = cv2.cvtColor(matriz_imagem, cv2.COLOR_RGB2BGR)

  # e finalmente salvamos a imagem
  cv2.imwrite('print_tela.png', imagem)

if __name__== "__main__":
  main()


Link para compartilhar na Internet ou com seus amigos:

Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico

Exercício Resolvido de Python - Ler um número inteiro na faixa 0-999 e mostrar a soma de seus dígitos - Apostila de Python Básico

Quantidade de visualizações: 2941 vezes
Pergunta/Tarefa:

Escreva um programa Python que leia um inteiro na faixa 0-999 e mostre a soma de seus dígitos. Por exemplo, se o valor for 523, a soma de seus dígitos será 5 + 2 + 3 = 10. Lembre-se que você deverá usar apenas os operadores matemáticos e o operador de módulo (%). Seu programa deverá exibir a seguinte saída:

Informe um valor de 0 até 999: 821
A soma dos dígitos é: 11
Resposta/Solução:

Veja a resolução comentada deste exercício usando Python console:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# função principal do programa
def main():
  # vamos solicitar ao usuário que informe um valor inteiro
  # na faixa 0 a 999 (incluindo)
  valor = int(input("Informe um valor de 0 até 999: "))
  
  # vamos verificar se o valor está na faixa permitida
  if(valor < 0 or valor > 999):
    print("Valor fora da faixa permitida")
  else:
    # vamos obter o terceiro dígito
    terceiro = valor % 10
    # obtém os digitos restantes
    valor = valor // 10
 
    # vamos obter o segundo dígito
    segundo = valor % 10
    # obtém os digitos restantes
    valor = valor // 10
 
    # vamos obter o primeiro dígito
    primeiro = valor % 10
    # obtém os digitos restantes
    valor = valor // 10
 
    # vamos obter a soma dos dígitos
    soma = terceiro + segundo + primeiro
 
    # vamos mostrar o resultado
    print("A soma dos dígitos é:", soma)
  
if __name__== "__main__":
  main()



Python ::: Dicas & Truques ::: Lista (List)

Como adicionar uma lista Python ao final de outra usando o método extend()

Quantidade de visualizações: 7611 vezes
A função extend() do objeto List da linguagem Python nos permite adicionar todos os elementos de uma determinada lista ao final de outra lista. É claro que qualquer objeto que fornece uma forma de iteração pode ser passado ao método, incluindo uma List, um Set, uma Tuple, etc.

Veja um trecho de código no qual criamos duas listas de inteiros e adicionamos todos os elementos da segunda lista ao final da primeira:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

"""
  Este exemplo mostra como adicionar os elementos
  de uma lista ao final de outra
"""

def main():
  # cria uma lista de inteiros
  valores1 = [2, 5, 12, 2, 3]
  print(valores1)

  # cria uma lista de pontos-flutuantes 
  valores2 = [4.3, 6.43, 8.1]
  print(valores2)

  # insere a segunda lista no final da primeira
  valores1.extend(valores2)

  # exibe o resultado final
  print(valores1)

if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

[2, 5, 12, 2, 3]
[4.3, 6.43, 8.1]
[2, 5, 12, 2, 3, 4.3, 6.43, 8.1]


Python ::: Dicas & Truques ::: Data e Hora

Como adicionar dias à uma data em Python usando a função timedelta() da classe datetime

Quantidade de visualizações: 8936 vezes
Nesta dica mostrarei como é possível usar o método timedelta() da classe datetime do Python para adicionar um determinado número de dias a uma data. O truque aqui é fornecer apenas o dia para o método timedelta(), obter o resultado e somá-lo com a data que já temos.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import datetime

# função principal do programa
def main():
  # dias a serem adicionados
  quant_dias = 2
 
  # Obtém a data de hoje
  hoje = datetime.date.today()
  print("Hoje é:", hoje)
 
  # Adiciona dias à data
  dias = datetime.timedelta(days=quant_dias)
  hoje = hoje + dias
 
  # Exibe o resultado
  print("Daqui à", quant_dias, "dias será", hoje)
 
if __name__== "__main__":
  main()

Ao executarmos este código Python nós teremos o seguinte resultado:

Hoje é: 2021-03-11
Daqui à 2 dias será 2021-03-13


Desafios, Exercícios e Algoritmos Resolvidos de Python

Veja mais Dicas e truques de Python

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 63 usuários muito felizes estudando em nosso site.