Code:
import web
url = 'http://www.domain.com/'
queue_links = set([url])
seen_links = set([url])
while queue_links:
new_links = set()
for page in web.multi_grab(queue_links):
print page.final_url
new_links |= page.internal_links()
queue_links = new_links - seen_links
seen_links |= new_links
print seen_links #all domain's pages

uses https://github.com/mattseh/python-web/