O script em lote do Guia rápido de introdução ao PyQGIS no Windows, conforme descrito nos comentários e pelo @PolyGeo, pode estar desatualizado. The SDK seems invalid
aparecer no PyCharm 2016.3 usando o script
Eu suspeito que ele precisa de mais caminhos para serem incluídos, especialmente o caminho pip.exe que existe %OSGEO4W_ROOT%\apps\Python27\Scripts
. Portanto, incluo esse e todos os outros caminhos (não tenho certeza qual deles é necessário, talvez alguns desnecessários, mas não há tempo para testar 1 por 1):
@echo off
SET OSGEO4W_ROOT=C:\Program Files\QGIS 2.18
SET PYCHARM="C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2016.3.2\bin\pycharm.exe"
CALL %OSGEO4W_ROOT%\bin\o4w_env.bat
CALL %OSGEO4W_ROOT%\apps\grass\grass-7.0.5\etc\env.bat
path %PATH%;%OSGEO4W_ROOT%\apps\qgis\bin
path %PATH%;%OSGEO4W_ROOT%\apps\grass\grass-7.0.5\lib
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\bin
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\qgis
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\qgis\python
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\Python27
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\Python27\Scripts
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\Python27\Lib
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\Python27\Lib\site-packages
SET PYTHONPATH=%PYTHONPATH%;%OSGEO4W_ROOT%\apps\Python27\DLLs
SET QGIS_PREFIX_PATH=%OSGEO4W_ROOT%\apps\qgis
start "PyCharm aware of QGIS" /B %PYCHARM% %*
Então funciona. Edite os caminhos para corresponder ao seu ambiente.
De qualquer forma, a recente como a instalação python / conda registra PATH ou PYTHONPATH no meu ambiente, sigo o mesmo para os caminhos python QGIS no script.