Ваше сообщение об ошибке и пример кода не совпадают.Вы говорите, что звоните:
heading.renderContents()
Но в вашем сообщении об ошибке говорится, что вы звоните:
print h.renderContents()
Что говорит о том, что, возможно, у вас есть ошибка в вашем коде, пытаясь вызватьrenderContents()
для строкового объекта, который не определяет этот метод.
В любом случае, было бы полезно, если бы вы проверили, какой тип объекта heading
, чтобы убедиться, что это действительно экземпляр BeautifulSoup.Это работает для меня с BeautifulSoup 3.2.0:
from BeautifulSoup import BeautifulSoup
heading = BeautifulSoup('<h1>heading</h1>')
repr(heading)
# '<h1>heading</h1>'
print heading.renderContents()
# <h1>heading</h1>
print str(heading)
# '<h1>heading</h1>'
h = str(heading)
print h
# <h1>heading</h1>