Take screenshots on macOS
Project description
# 📸 screenshot: Better macOS screenshots via the Terminal
`screenshot` is a command line utility that lets you specify an *application name* and *window title* in order to take a screenshot of a specific window.
Using `screenshot`, you can capture windows belonging to an application, or only an application's windows with certain titles.
## Justification and Use Case
The macOS `screencapture` utility is not developer friendly.
To programmatically take a screenshot of an application, or a specific window, you must supply a *window ID* to `screencapture`.
In order to find a window's *window ID*, you'll need call out to Quartz.
In newer versions of macOS, the `screencapture` utility improves the user experience slightly: you can run the command and then click on the window you'd like to capture.
However, that necessitates that the user clicks a window each time. You cannot include this as part of an automated pipeline.
To that end, I use this utility to automatically generate screenshots of web, mobile and desktop applications.
## Example
Take a screenshot of the current Terminal window and view it with Preview.app:
```bash
open "`screenshot Terminal`"
```
Take a screenshot of the Pycharm application with the *window title* containing "screenshot":
```bash
screenshot Pycharm -t screenshot
```
## Installation
You will need Python 3.6+. Please install it with `brew` or `ports` if you do not have it already.
### PyPI
```bash
pip3 install screenshot
```
### Github Source
Grab the source, run the following in the source dir:
```bash
pip3 install -r requirements.txt
```
then run
```bash
python3 setup.py install
```
## Usage
`screenshot --help`
```
Usage: screenshot [OPTIONS] APPLICATION_NAME
Options:
-w, --window_selection_options TEXT
Options: all_windows, on_screen_only,
above_window, below_window, include_window,
exclude_desktop
Default: exclude_desktop
on_screen_only
-t, --title TEXT Title of window from APPLICATION_NAME to
capture.
-f, --filename TEXT Filename to save the captured PNG as.
-a, --all_windows Capture all windows matching parameters.
-o, --output TEXT Image format to create, default is png
(other options include pdf, jpg, tiff)
-s, --shadow Capture the shadow of the window.
--help Show this message and exit.
```
## License
See `LICENSE`
`screenshot` is a command line utility that lets you specify an *application name* and *window title* in order to take a screenshot of a specific window.
Using `screenshot`, you can capture windows belonging to an application, or only an application's windows with certain titles.
## Justification and Use Case
The macOS `screencapture` utility is not developer friendly.
To programmatically take a screenshot of an application, or a specific window, you must supply a *window ID* to `screencapture`.
In order to find a window's *window ID*, you'll need call out to Quartz.
In newer versions of macOS, the `screencapture` utility improves the user experience slightly: you can run the command and then click on the window you'd like to capture.
However, that necessitates that the user clicks a window each time. You cannot include this as part of an automated pipeline.
To that end, I use this utility to automatically generate screenshots of web, mobile and desktop applications.
## Example
Take a screenshot of the current Terminal window and view it with Preview.app:
```bash
open "`screenshot Terminal`"
```
Take a screenshot of the Pycharm application with the *window title* containing "screenshot":
```bash
screenshot Pycharm -t screenshot
```
## Installation
You will need Python 3.6+. Please install it with `brew` or `ports` if you do not have it already.
### PyPI
```bash
pip3 install screenshot
```
### Github Source
Grab the source, run the following in the source dir:
```bash
pip3 install -r requirements.txt
```
then run
```bash
python3 setup.py install
```
## Usage
`screenshot --help`
```
Usage: screenshot [OPTIONS] APPLICATION_NAME
Options:
-w, --window_selection_options TEXT
Options: all_windows, on_screen_only,
above_window, below_window, include_window,
exclude_desktop
Default: exclude_desktop
on_screen_only
-t, --title TEXT Title of window from APPLICATION_NAME to
capture.
-f, --filename TEXT Filename to save the captured PNG as.
-a, --all_windows Capture all windows matching parameters.
-o, --output TEXT Image format to create, default is png
(other options include pdf, jpg, tiff)
-s, --shadow Capture the shadow of the window.
--help Show this message and exit.
```
## License
See `LICENSE`
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
screenshot-1.0.0.tar.gz
(4.7 kB
view details)
Built Distribution
File details
Details for the file screenshot-1.0.0.tar.gz
.
File metadata
- Download URL: screenshot-1.0.0.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.13.0 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14b1a22f24647ae53684754f19bd374567e0d71377ddad9d13023b6deda4d501 |
|
MD5 | d12621ec89144e4087be6529dcbb12f1 |
|
BLAKE2b-256 | 34906f5286b2bb3657176a80706b340627dff1f2139bdbebebf9d5b01de86940 |
File details
Details for the file screenshot-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: screenshot-1.0.0-py3-none-any.whl
- Upload date:
- Size: 5.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.13.0 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.7.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08fce3e2dc07ebdbfeb61aa34baf44267f64229e2f145733321182c3565dc5c9 |
|
MD5 | 0937af65391f8c26927135c03ae32cb9 |
|
BLAKE2b-256 | 1013755aa410267361f40cef938668b48ab443a5ffc0860f0ed293b498f5952e |