вполне логично… нужно ещё размер страницы указать…
import spynner
from PyQt4.QtCore import QSize
b = spynner.Browser()
b.create_webview()
b.load('http://python.su')
size = b.webpage.mainFrame().contentsSize()
new_size = QSize(max(1280, size.width()), max(1024, size.height()))
b.webpage.setViewportSize(new_size)
b.snapshot().save('python_su.png')