Найти - Пользователи
Полная версия: очистка от java script
Начало » Python для новичков » очистка от java script
1
sanis
Задача: почистить 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.: очень-очень новичек в этом :) так что без обид
cutwater
sanis
p.s.: очень-очень новичек в этом smile так что без обид
Новичек и без обид это понятно. Но почему же вы все упорно не хотите думать..

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

только он не удаляет))
PooH
sanis
только он не удаляет))
re.DOTALL | re.IGNORECASE
нет?
o7412369815963
# 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)
sanis
всем спасибо за внимание, вопрос закрыт!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB