Any of those help Using BeautifulSoup, I'm trying to extract the contents which is in between the tags. I use string property to get the desired output. It works fine if the tag contains only text. But it fails if the tag has some other HTML tags other than the normal text placed in it. E.g. , It should work fine. Try with lxml
from bs4 import BeautifulSoup as bs
html = '''
<span>Elegant, Furnished, Planned</span>
soup = bs(html, 'lxml')
scrap text by HTML class using BeautifulSoup return null