>>> print grab.request()
А с чего вы взяли что request() возвращает объект с интерфейсом словаря? Да, документации пока нет толковой, но зачем гаданием заниматься :) Смотрите в код, если возникают ошибки какие-то.
Вот так будет работать:
>>> from grab import Grab
>>> grab = Grab()
>>> grab.setup(url='http://python.org/')
>>> print grab.request().body
Я бы ваш код так записал:
from grab import Grab
g = Grab()
g.go('http://python.org')
print g.response.body
Вопросы по grab лучше задавать в майл-группу, я её читаю. Этот форум редко читаю.
Группа тут:
http://groups.google.com/group/python-grab/Недавно стал работать надо документацией, уже есть кое-что почитать:
http://packages.python.org/grab