Skip to main content

A cross-platform multi-screen shot module in pure python using ctypes

Very basic, it will grab one screen shot by monitor or a screen shot of all monitors and save it to an optimised PNG file, Python 2.7/3.3 compatible.

So, while you can pip install mss, you may just drop it in your project and forget about it.

MSS stands for Multi-Screen Shot.

It’s under zlib licence.

Instance the good class

You can determine automatically which class to use:

from platform import system
from mss import *

systems = {
    'Darwin' : MSSMac,
    'Linux'  : MSSLinux,
    'Windows': MSSWindows
}
try:
    MSS = systems[system()]
except KeyError:
    err = 'System "{0}" not implemented.'.format(system())
    raise NotImplementedError(err)

Or simply import the good one:

from mss import MSSLinux as MSS

init(debug=False)

When initalising an instance of MSS, you can enable debug output:

mss = MSS(debug=True)

save(output=’mss’, oneshot=False)

For each monitor, grab a screen shot and save it to a file.

Parameters:

output - string - the output filename without extension
oneshot - boolean - grab only one screen shot of all monitors

This is a generator which returns created files:

'output-1.png',
'output-2.png',
...,
'output-NN.png'
or
'output-full.png'

Example

Then, it is quite simple:

try:
    mss = MSS()

    # One screen shot per monitor
    for filename in mss.save():
        print('File "{0}" created.'.format(filename))

    # A shot to grab them all :)
    for filename in mss.save(oneshot=True):
        print('File "{0}" created.'.format(filename))
except Exception as ex:
    print(ex)
    raise

Bonus

Just for fun … Show us your screen shot with all monitors in one file, we will update the gallery.

Link to the galley: https://tiger-222.fr/tout/python-mss/galerie/

Metadata

Release files for mss 0.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mss 0.0.4
File Size Uploaded
mss-0.0.4.tar.gz 8.9 kB Details

Release files / mss-0.0.4.tar.gz

Download URL mss-0.0.4.tar.gz
Size 8.9 kB
Tags Source
SHA-256 checksum
How to use checksums
bfb8a52cfcad9ed79b59cfc60ce902ad3c6d47f177b289c2f1125fa2d35ca5af
BLAKE2b-256 checksum
How to use checksums
7e637b48e08a10076600d2d4a8ff8cb5e398ae263e33dcfaa67aa8bc02eb7f1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

10.2.0

2 release files

10.1.0

2 release files

10.0.0

2 release files

9.0.2

2 release files

9.0.1

2 release files

9.0.0

2 release files

8.0.3

2 release files

8.0.2

2 release files

8.0.1

2 release files

8.0.0

2 release files

7.0.1

2 release files

7.0.0

2 release files

6.1.0

2 release files

6.0.0

2 release files

5.1.0

2 release files

5.0.0

2 release files

4.0.3

2 release files

4.0.2

2 release files

4.0.1

2 release files

4.0.0

2 release files

3.3.2

2 release files

3.3.1

2 release files

3.3.0

2 release files

3.2.1

1 release file

3.2.0

1 release file

3.1.2

1 release file

3.1.1

1 release file

3.1.0

1 release file

3.0.1

1 release file

3.0.0

1 release file

2.0.22

1 release file

2.0.18

1 release file

2.0.0

1 release file

1.0.2

1 release file

1.0.0

1 release file

0.1.1

1 release file

0.1.0

1 release file

0.0.8

1 release file

0.0.7

1 release file

0.0.6

1 release file

0.0.5

1 release file

This release

0.0.4 This release

1 release file

0.0.3

1 release file

0.0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page