Python fetchching <title>
Я хочу получить заголовок веб-страницы, которую я открываю с помощью urllib2. Каков наилучший способ сделать это, проанализировать html и найти то, что мне нужно (на данный момент только -tag, но может потребоваться больше в будущем).
Есть ли хороший синтаксический разбор для этой цели?
- urllib2 не получает весь HTTP-ответ
- urllib2 открыватель зависает, если он запускается внутри потока
- Python: нажатие кнопки
- Python URLLib / URLLib2 POST
- Разница в производительности между urllib2 и asyncore
4 Solutions collect form web for “Python fetchching <title>”
Да, я бы порекомендовал BeautifulSoup
Если вы получаете титул, это просто:
soup = BeautifulSoup(html) myTitle = soup.html.head.title
или
myTitle = soup('title')
Взято из документации
Он очень надежный и будет анализировать html независимо от того, насколько он бесполезен.
Попробуйте Красивый суп :
url = 'http://www.example.com' response = urllib2.urlopen(url) html = response.read() soup = BeautifulSoup(html) title = soup.html.head.title print title.contents
Почему вы, ребята, импортируете всю дополнительную библиотеку для одной задачи. Нет регулярных выражений? не был ли запрос на urllib, а не bs4 или mech, которые являются сторонними? со стандартными библиотеками анализируйте html и сопоставляйте строку, затем разделите '>'
'<'
на re или whateves.
N=(len(html)) for a in html(N): if '<title>' in a: Title=(str(a))
thats python 2 Думаю, вы можете разбить его
Используйте красивый суп .
html = urllib2.urlopen("...").read() from BeautifulSoup import BeautifulSoup soup = BeautifulSoup(html) print soup.title.string