pyipsw
is a utility created in order to access ipsw.me data easily using python / cli.
Install the last released version using pip
:
python3 -m pip install -U pyipsw
Or install the latest version from sources:
git clone [email protected]:matan1008/pyipsw.git
cd pyipsw
python3 -m pip install -U -e .
In order to show data about devices, just run the devices command:
pyipsw devices
If you require more or less data, add -c
with column name:
pyipsw devices -c device -c version -c BoardConfig
Run pyipsw devices --help
to see available columns:
Usage: pyipsw devices [OPTIONS]
Show data about apple devices.
Options:
-c, --columns [device|name|version|buildid|url|uploaddate|size|signed|sha1sum|releasedate|platform|md5sum|filename|cpid|bdid|BoardConfig]
Data to show
-f, --filters TEXT Python code to act as filter to devices,
e.g. "iPhone11" in device
--help Show this message and exit.
You can also add python code to filter the printed data:
pyipsw devices -f "'iPhone10' in device and '14.4' in version"
Which will output:
------------------------------------------------------------------------------------
| device | version | buildid | filename |
------------------------------------------------------------------------------------
| iPhone10,1 | 14.4.2 | 18D70 | iPhone_4.7_P3_14.4.2_18D70_Restore.ipsw |
| iPhone10,1 | 14.4.1 | 18D61 | iPhone_4.7_P3_14.4.1_18D61_Restore.ipsw |
| iPhone10,1 | 14.4 | 18D52 | iPhone_4.7_P3_14.4_18D52_Restore.ipsw |
| iPhone10,2 | 14.4.2 | 18D70 | iPhone_5.5_P3_14.4.2_18D70_Restore.ipsw |
| iPhone10,2 | 14.4.1 | 18D61 | iPhone_5.5_P3_14.4.1_18D61_Restore.ipsw |
| iPhone10,2 | 14.4 | 18D52 | iPhone_5.5_P3_14.4_18D52_Restore.ipsw |
| iPhone10,3 | 14.4.2 | 18D70 | iPhone10,3,iPhone10,6_14.4.2_18D70_Restore.ipsw |
| iPhone10,3 | 14.4.1 | 18D61 | iPhone10,3,iPhone10,6_14.4.1_18D61_Restore.ipsw |
| iPhone10,3 | 14.4 | 18D52 | iPhone10,3,iPhone10,6_14.4_18D52_Restore.ipsw |
| iPhone10,4 | 14.4.2 | 18D70 | iPhone_4.7_P3_14.4.2_18D70_Restore.ipsw |
| iPhone10,4 | 14.4.1 | 18D61 | iPhone_4.7_P3_14.4.1_18D61_Restore.ipsw |
| iPhone10,4 | 14.4 | 18D52 | iPhone_4.7_P3_14.4_18D52_Restore.ipsw |
| iPhone10,5 | 14.4.2 | 18D70 | iPhone_5.5_P3_14.4.2_18D70_Restore.ipsw |
| iPhone10,5 | 14.4.1 | 18D61 | iPhone_5.5_P3_14.4.1_18D61_Restore.ipsw |
| iPhone10,5 | 14.4 | 18D52 | iPhone_5.5_P3_14.4_18D52_Restore.ipsw |
| iPhone10,6 | 14.4.2 | 18D70 | iPhone10,3,iPhone10,6_14.4.2_18D70_Restore.ipsw |
| iPhone10,6 | 14.4.1 | 18D61 | iPhone10,3,iPhone10,6_14.4.1_18D61_Restore.ipsw |
| iPhone10,6 | 14.4 | 18D52 | iPhone10,3,iPhone10,6_14.4_18D52_Restore.ipsw |
------------------------------------------------------------------------------------
You can also download the firmwares with:
pyipsw download-devices /tmp/firmwares -f "'iPhone10' in device and '14.4' in version"