Mac OS support has since been added to Pillow ImageGrab, as of version 3.0.0. It uses the same API as on Windows -
from PIL import ImageGrab
im = ImageGrab.grab() # entire screen
im2 = ImageGrab.grab([0, 0, 100, 100]) # a selected region of the screen
However, there is no Linux support at the moment.
You can read more here - http://pillow.readthedocs.io/en/5.2.x/reference/ImageGrab.html