Visual Studio Code pylint: Unable to import ‘protorpc’

Posted on

Question :

Visual Studio Code pylint: Unable to import ‘protorpc’

I’m using pylint in Visual Studio Code to develop a Google App Engine (GAE) Cloud Endpoint API in Python. I’m unable to resolve a lint error. I don’t know what’s causing the error, but at a guess, pylint cannot find the protorpc library?

enter image description here

The recommended fix in Troubleshooting Linting is to configure workspace settings to point to fully qualified python executable. I have done this, but the lint error remains.

enter image description here

protorpc itself is installed to:


…and this contains the module that cannot be imported:                    webapp                     wsgi             static

I’ve added this path to $PYTHONPATH (along with the kitchen sink):

export GOOGLE_CLOUD_SDK=~/google-cloud-sdk
export APPENGINE_PATH=$GOOGLE_CLOUD_SDK/platform/google_appengine

export PYTHONPATH=$PYTHONPATH:$GOOGLE_CLOUD_SDK/lib/googlecloudsdk/api_lib
export PYTHONPATH=$PYTHONPATH:$GOOGLE_CLOUD_SDK/platform/google_appengine/lib
export PYTHONPATH=$PYTHONPATH:$GOOGLE_CLOUD_SDK/platform/google_appengine/lib/protorpc-1.0/protorpc

The application runs locally and also when deployed, so this appears to be just a lint error, but it’s frustrating that I can’t solve it.

Using third-party libraries states:

The Python runtime in the standard environment includes the Python
standard library, the App Engine libraries, and a few bundled
third-party packages.

Because of this, I assumed ‘the App Engine libraries’ includes protorpc, but I’m unsure. Moreover, Adding the Cloud Endpoints Frameworks library to the sample API only requires google-endpoints be installed to the app’s lib directory:

pip install -t lib google-endpoints --extra-index-url= --ignore-installed

My point is, I don’t think I’ve not installed something, and I don’t think I’m missing anything in my (web) app’s lib directory.

Asked By: Jack


Answer #1:

Open the settings file of your Visual Studio Code (settings.json) and add the library path to the "python.autoComplete.extraPaths" list.

"python.autoComplete.extraPaths": [
Answered By: Morad

Answer #2:

Changing the library path worked for me. Hitting Ctrl + Shift + P and typing python interpreter and choosing one of the available shown. One was familiar (as pointed to a virtualenv that was working fine earlier) and it worked. Take note of the version of python you are working with, either 2.7 or 3.x and choose accordingly

Answered By: Ivan_ug

Answer #3:

I was facing same issue (VS Code).Resolved by below method

1) Select Interpreter command from the Command Palette (Ctrl+Shift+P)

2) Search for “Select Interpreter”

3) Select the installed python directory


Answered By: SurajKj

Answer #4:

For your case, add the following code to vscode’s settings.json.

"python.linting.pylintArgs": [
"--init-hook='import sys; sys.path.append("~/google-cloud-sdk/platform/google_appengine/lib"")'""

Leave a Reply

Your email address will not be published.