Aaron Viscichini
Aaron Viscichini

Reputation: 287

Pylint Error Message: "E1101: Module 'lxml.etree' has no 'strip_tags' member'"

I am experimenting with lxml and python for the first time for a personal project, and I am attempting to strip tags from a bit of source code using etree.strip_tags().

For some reason, I keep getting the error message: "E1101: Module 'lxml.etree' has no 'strip_tags' member'".

I'm not sure why this is happening.

Here's the relevant portion of my code:

from lxml import etree

...

DOC = etree.strip_tags(DOC_URL, 'html')
print DOC

Any ideas?

Thanks.

Upvotes: 21

Views: 8897

Answers (1)

iFreilicht
iFreilicht

Reputation: 14484

The reason for this is that pylint by default only trusts C extensions from the standard library and will ignore those that aren't.

As lxml isn't part of stdlib, you have to whitelist it manually. To do this, navigate to the directory of your project in a terminal, and generate an rcfile for pylint:

$ pylint --generate-rcfile > .pylintrc

Then, edit .pylintrc to add lxml to the whitelist (see pylint documentation):

extension-pkg-allow-list=lxml

After that, all E1101 errors regarding lxml should vanish.

More details in this answer.

Upvotes: 33

Related Questions