如何解决Python:如何在不导入的情况下从HTML中剥离<script>和</script>标记?
如上所述,输入的HTML是单个字符串。我可以使用哪些易于理解的方法来删除标签?我想保留它们之间的信息。
解决方法
您可以这样做:
<div id="sidebar">
<div id="div1" style="overflow-y:scroll;">
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul> <ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul> <ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
<ul>
<li>1</li>
<li>2</li>
...
<li>N</li>
<li>1</li>
<li>2</li>
...
<li>N</li>
</ul>
</div>
<div id="div2">
<div>Constant Content</div>
</div>
</div>
<main>
</main>
但是请记住,这不是清理跨站点脚本(XSS)字符串的保存方法。没有脚本标签,还有许多其他方法可以触发XSS。例如,使用图片标签的new_string = html_string.replace('<script>','').replace('</script>','')
功能:
onload
详细了解XSS here
,您似乎不导入任何东西很奇怪。
您可以尝试通过此操作从所有标签中提取文字。
>>> text = '<script>ABCD</script>'
>>> text.split('>')[1].split('<')[0]
'ABCD'
顺便说一句,您可以使用BeautifulSoup来提高解析效率
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。