padrão regex em python para analisar tags de título HTML

Eu estou aprendendo a usar tanto ore módulo e ourllib módulo em python e tentando escrever um simples web scraper. Aqui está o código que eu escrevi para raspar apenas o título dos sites:

#!/usr/bin/python

import urllib
import re

urls=["http://google.com","https://facebook.com","http://reddit.com"]

i=0

these_regex="<title>(.+?)</title>"
pattern=re.compile(these_regex)

while(i<len(urls)):
        htmlfile=urllib.urlopen(urls[i])
        htmltext=htmlfile.read()
        titles=re.findall(pattern,htmltext)
        print titles
        i+=1

Isso dá a saída correta para o Google e o Reddit, mas não para o Facebook - assim:

['Google']
[]
['reddit: the front page of the internet']

Isso porque, achei que na página do Facebooktitle tag é a seguinte:<title id="pageTitle">. Para acomodar o adicionalid=Modifiquei othese_regex variável da seguinte forma:these_regex="<title.+?>(.+?)</title>". Mas isso dá a seguinte saída:

[]
['Welcome to Facebook \xe2\x80\x94 Log in, sign up or learn more']
[]

Como eu combinaria os dois para que eu possa levar em conta quaisquer parâmetros adicionais passados ​​dentro dotitle tag?

questionAnswers(3)

yourAnswerToTheQuestion