Cara Mengambil Screenshot Layar Menggunakan Python

Dalam pemakaian komputer sehari-hari, seringkali kita perlu mengambil screenshot layar atau monitor.
Umumnya, bila menggunakan windows kita harus copy paste terlebih dahulu ke aplikasi paint, atau bisa juga dengan aplikasi Snipping tool.
Di windows 8 sampai 10 bisa dengan menekan tombol Windows + PrtScr dan file gambar akan langsung tersimpan dalam folder Screenshots di Pictures.
Dengan python kita bisa mengambil screenshot layar dan menyimpannya langsung jadi file dengan cara yang sangat mudah.

Ada 2 modul yang bisa kita gunakan.

1. Modul pyscreenshot
Modul ini sangat mudah digunakan. Pertama kita install terlebih dahulu modulnya.

pip install pyscreenshot

Selanjutnya, kita contohkan di sini mengambil tampilan layar yang kita beri nama sshot.jpg
Sintaksnya adalah:

pyscreenshot.grab_to_file(filename, childprocess=True, backend=None)

dimana:
filename = nama file
childprocess = proses virtual display dan backend untuk menghindari error
backend = backend yang digunakan (scrot, wx, dan sebagainya)

Kodenya adalah sebagai berikut.

import pyscreenshot as pshot
pyscreenshot.grab_file('screenshot.jpg', childprocess=False)

Gampang bukan? Untuk fitur lain dari modul ini, silahkan Anda eksplor.

2. Modul mss
Kelemahan dari modul pyscreenshot adalah kalau ada lebih dari 1 monitor, maka
screenshot yang diambil hanya monitor pertama, sedangkan yang ke 2 dan seterusnya tidak.
Hal ini bisa diatasi dengan menggunakan modul mss.
Dengan modul ini, kita bisa mengambil screenshot fullscreen semua layar atau hanya layar monitor
tertentu saja.

Pertama sekali, kita install dulu modulnya
pip install mss
Setelah itu, kita contohkan mengambil screenshot layar dan kita simpan sebagai sshot.png.

Sintaksnya adalah sebagai berikut:

sct.save(mon=0, output='monitor-{mon}.png, callback=None)

dimana:
mon = monitor ke berapa
output = nama file untuk disimpan
callback = Fungsi yang akan dijalankan sebelum file disimpan

Contoh penggunaannya adalah sebagai berikut:

from mss import mss
sct = mss()
sct.save('sshot1.png') # monitor pertama
sct.save(mon=1, output='sshot2.png') # monitor ke 2
sct.save(mon=-1, output='sshotfull.png') # semua monitor

Untuk lengkapnya fungsi-fungsi yang dimiliki modul mss, bisa Anda coba-coba sendiri.

Itulah 2 modul python yang bisa Anda gunakan untuk menyimpan screenshot layar dengan mudah.

Cara Upload File ke Dropbox


Dengan python, kita bisa mengupload file secara otomatis ke akun dropbox. Dropbox menyediakan API yang menggunakan OAuth V2, yang bisa akses menggunakan modul python, yaitu modul dropbox.

Continue reading “Cara Upload File ke Dropbox”

Fungsi __import__()

Deskripsi

Fungsi __import__() adalah fungsi lanjut yang dipanggil oleh statement import. Fungsi ini sangat jarang digunakan untuk pemakaian sehari-hari.
Lebih baik menggunakan statemen import untuk mengimpor modul, atau menggunakan metode importlib.import_module().


Sintaks

Fungsi __import__() memiliki sintaks sebagai berikut:

__import__(name, globals=None, locals=None, fromlist=(), level=0)

Parameter

  • name – nama modul yang akan diimport
  • globals dan locals – menentukan cara menginterpretasikan name
  • fromlist – objek atau submodul yang harus diimport oleh name
  • level – menentukan apakah akan digunakan import absolut atau relatif

Nilai Kembalian

Fungsi __import__() mengembalikan modul yang jadi argumennya.


Contoh

mathematics = __import__('math', globals(), locals(), [], 0) print(mathematics.fabs(-3.5))

Output

Output dari program di atas adalah seperti berikut:

3.5

Fungsi zip()

Deskripsi

Fungsi zip() berfungsi untuk membuat iterator berisi item dari dua buah iterable atau lebih dalam bentuk tuple.


Sintaks

Fungsi zip() memiliki sintaks sebagai berikut:

zip(*iterables)

Parameter

Fungsi zip() memiliki parameter, yaitu:

iterables – dua atau lebih iterable untuk digabungkan menjadi iterator.


Nilai Kembalian

Fungsi zip() mengembalikan iterator yang item-itemnya bisa diakses dengan menggunakan fungsi next() ataupun metode __next__().
Bila argumennya kosong, maka fungsi zip() akan mengembalikan iterator kosong.
Bila argumennya hanya 1 iterable, hasilnya adalah iterator dengan item-item dalam bentuk tuple beranggotakan 1 anggota.
Bila argumennya lebih dari satu, maka hasilnya adalah item-item berupa tuple berpasangan, dengan panjang iterable yang lebih sedikit.


Contoh

z = zip() print(z) x = zip([1,2,3],[4,5,6]) next(x) next(x) x.__next__() y = zip([1,2,3], [4,5,6,7,8]) print(list(y))

Output

Output dari program di atas adalah seperti berikut:

zip object at 0x7f76f137dac8
[(1, 4), (2, 5), (3, 6)]

Fungsi vars()

Deskripsi

Fungsi vars() mengembalikan atribut __dict__ dari suatu objek jika objek tersebut memilikinya.


Sintaks

vars(object)

Parameter

Fungsi vars() memiliki satu parameter, yaitu:

  • object – bisa modul, kelas, dan objek lainnya yang akan dikembalikan atribut __dict__ nya.

  • Nilai Kembalian

    Fungsi vars() mengembalikan atribut __dict__ dari objek yang menjadi argumennya. Bila objek tidak memiliki atribut __dict__, maka akan muncul TypeError.


    Contoh

    class Foo: def __init__(self, a = 50, b = 100): self.a = a self.b = b InstanceOfFoo = Foo() print(vars(InstanceOfFoo))

    Output

    {'a': 50, 'b': 100}
    

    Fungsi type()

    Deskripsi

    Fungsi type() berfungsi untuk mengetahui jenis/tipe data dari suatu objek.


    Sintaks

    type(object)
    type(name, bases, dict)
    

    Parameter

    Fungsi type() memiliki beberapa parameter, yaitu:

    • object – objek yang hendak dicari tahu tipenya
    • name – nama kelas, sebagai atribut __name__
    • bases – tuple base class, sebagai atribut __bases__
    • dict – dictionary dari body class, sebagai atribut __dict__

    Nilai Kembalian

    Fungsi type() mengembalikan tipe dari objek


    Contoh

    type(1) type([1, 3]) o1 = type('X', (object,), dict(a='Foo', b=12)) print(type(o1)) print(vars(o1)) class test: a = 'Foo' b = 12 o2 = type('Y', (test,), dict(a='Foo', b=12)) print(type(o2)) print(vars(o2))

    Output

    
    
    
    {'b': 12, 'a': 'Foo', '__dict__': , '__doc__': None, '__weakref__': }
    
    {'b': 12, 'a': 'Foo', '__doc__': None}
    

    Fungsi super()

    Deskripsi

    Fungsi super() berfungsi untuk merujuk kepada kelas induk dari objek.


    Sintaks

    super()
    super(type)
    super(type, obj)
    super(type, type2)
    

    Parameter

    • type – tipe objek
    • obj – objek

    Nilai Kembalian

    Fungsi super() mengembalikan atribut dan metode dari super objek (induk) suatu kelas.


    Contoh

    class Mamalia(object): def __init__(self, mammalName): print(mammalName, 'adalah hewan berdarah panas.') class Kucing(Mamalia): def __init__(self): print('Kucing punya empat kaki.') super().__init__('Kucing') m1 = Kucing()

    Output

    Kucing punya empat kaki.
    Kucing adalah hewan berdarah panas.
    

    Fungsi tuple()

    Deskripsi

    Fungsi tuple() berfungsi untuk membuat tuple atau mengkonversi data tipe lain menjadi tuple.


    Sintaks

    Fungsi tuple() memiliki sintaks sebagai berikut:

    tuple(iterable)

    Parameter

    Fungsi tuple() memiliki satu parameter, yaitu:
    iterable (Opsional) – iterable (list, string, dan sebagainya)


    Nilai Kembalian

    Fungsi tuple() mengembalikan bentuk tuple dari argumennya.


    Contoh

    # tuple kosong t1 = tuple() print(t1) # tuple dari list t2 = tuple([1, 3, 5]) print(t2)

    Output

    Output dari program di atas adalah seperti berikut:

    ()
    (1, 3, 5)
    

    Fungsi sum()

    Deskripsi

    Fungsi sum() berfungsi untuk menjumlahkan semua bilangan atau item yang menjadi argumennya.


    Sintaks

    Fungsi sum() memiliki sintaks sebagai berikut:
    sum(iterable[,start])


    Parameter

    Fungsi sum() memiliki 2 buah parameter, yaitu:

    • iterable – iterable (list, dictionary, tuple) yang akan dijumlahkan.
    • start (opsional) – nilai ini akan ditambahkan ke hasil penjumlahan. Defaultnya adalah 0.

    Nilai Kembalian

    Fungsi sum() akan mengembalikan jumlah dari semua item iterable ditambah dengan nilai start jika ada.


    Contoh

    bilangan = [1, 3, 7, 14] print(sum(bilangan)) print(sum(bilangan,5))

    Output

    Output dari program di atas adalah seperti berikut:

    25
    30
    

    Fungsi staticmethod()

    Deskripsi

    Fungsi staticmethod() adalah fungsi yang berguna untuk mengubah suatu fungsi menjadi static method


    Sintaks

    Fungsi staticmethod() memiliki sintaks sebagai berikut:

    staticmethod(function)

    Parameter

    Fungsi staticmethod() hanya memiliki satu parameter yaitu:


    • function – fungsi yang akan diubah menjadi static method

    Nilai Kembalian

    Fungsi staticmethod() akan mengembalikan static method dari fungsi yang menjadi argumennya.


    Contoh

    class Matematik: def jumlah(x, y): return x + y # membuat static method dari jumlah Matematik.jumlah = staticmethod(Matematik.jumlah) print('Jumlahnya adalah:', Matematik.jumlah(5, 10))

    Output

    Jumlahnya adalah 15