Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Парсинг html регулярными выражениями

None None Ученик (91), на голосовании 14 лет назад
Файл 1:
[code]import urllib

hdl = urllib.urlopen("file://localhost/D:/page.htm")
html = hdl.read()
hdl.close()

text_file = open("file.txt", "w")
text_file.write(html)
text_file.close()[/code]
Файл 2:
[code]import re

text_file = open("file.txt", "r")
contents = text_file.read()
text_file.close()

p = re.compile('(?<=starting_html_tag).*(?=ending_html_tag)')
m = p.search(contents)
if m:
print 'Match found: ', m.group()
else:
print 'No match'[/code]
Первым скриптом открываем веб-страницу и записываем все содержимое страницы в файл file.txt. Вторым скриптом открываем файл file.txt и ищем содержимое между тегами starting_html_tag и ending_html_tag, которые ([color=#FF0000]![/color]) там имееются и они уникальны.

Проблема: No match! Почему не хочет искать инфу между указанными тегами? Хах... Я сказал не хочет, потому что вот какая штука:

только что созданный файл file.txt выглядит так:
[code]

<h1><h1>
Дополнен 14 лет назад
> объясните мне плис...
дело не в этом
Голосование за лучший ответ
100-700 Мыслитель (9433) 14 лет назад
объясните мне плис как это вы допёрли сделать такое выражение
hdl = urllib.urlopen("file://localhost/D:/page.htm") ?
у вас начинаеться все с диска а не локального хоста
hdl = urllib.urlopen("file://D:/page.htm")
Похожие вопросы