Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 17, 2011 09:06:50

sanis
От:
Зарегистрирован: 2011-01-17
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

очистка от java script

Задача: почистить html страничку от всех тегов <script language=“JavaScript”></script> включая содержимое тегов

решение:

#!/usr/bin/env python
# -*- coding: utf8 -*-
import re
import urllib

page = urllib.urlopen("http://www.google.ru")
rd = page.read()

starttag = re.compile(r'<script>')
endtag = re.compile('</script>')
rd = starttag_re.sub('', rd)
rd = endtag_re.sub('', rd)
print rd
в данном случае удаляет в переменной rd только все теги <script></script>
если использовать конструкцию типа
r1 = re.compile(r'<script>.*</script>')
rd = r1.sub('', rd)
вместо
starttag = re.compile(r'<script>')
endtag = re.compile('</script>')
rd = starttag_re.sub('', rd)
rd = endtag_re.sub('', rd)
ничего не происходит!

p.s.: очень-очень новичек в этом :) так что без обид



Офлайн

#2 Янв. 17, 2011 10:02:35

cutwater
От:
Зарегистрирован: 2009-01-08
Сообщения: 444
Репутация: +  19  -
Профиль   Отправить e-mail  

очистка от java script

sanis
p.s.: очень-очень новичек в этом smile так что без обид
Новичек и без обид это понятно. Но почему же вы все упорно не хотите думать..

<script.*?>.*?</script>
Вот как-то так для общего случая. Допишите по небходимости.



Отредактировано (Янв. 17, 2011 10:03:47)

Офлайн

#3 Янв. 17, 2011 13:40:59

sanis
От:
Зарегистрирован: 2011-01-17
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

очистка от java script

а! точно! спасибо))

только он не удаляет))



Отредактировано (Янв. 17, 2011 14:00:59)

Офлайн

#4 Янв. 17, 2011 18:57:38

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

очистка от java script

sanis
только он не удаляет))
re.DOTALL | re.IGNORECASE
нет?



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Отредактировано (Янв. 17, 2011 18:58:46)

Офлайн

#5 Янв. 17, 2011 22:54:58

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

очистка от java script

# coding: utf8

import re

txt = """<meta name='yandex-verification' content='6eb' />
<script type="text/javascript" src="/static/jquery.js"></script>
<script type="text/javascript">
var tags_all = 0;
</script>
<meta name='yandex-verification' content='6eb' />
"""

print re.compile(r'<script.*?>.*?</script>', re.DOTALL | re.IGNORECASE).sub('', txt)

Отредактировано (Янв. 17, 2011 23:05:25)

Офлайн

#6 Янв. 18, 2011 06:58:12

sanis
От:
Зарегистрирован: 2011-01-17
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

очистка от java script

всем спасибо за внимание, вопрос закрыт!



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version