我使用<script async ...>
来异步加载JavaScript文件。当我使用BeautifulSoup4将文件加载到Python中时,进行一些不相关的更改并保存结果,BeautifulSoup4将我的<script>
语句转换为<script async="" ...>
。有没有办法阻止BeautifulSoup4附加多余的...=""
?
最小的“工作”示例:
In [1]: import bs4
In [2]: str(bs4.BeautifulSoup('<script async src="test.js"/>', 'html.parser'))
Out[2]: '<script async="" src="test.js"></script>'
答案 0 :(得分:1)
你可以设置&#39; async&#39;属性为None
,如果您希望它没有值。
soup = bs4.BeautifulSoup('<script async src="test.js"/>', 'html.parser')
for tag in soup.find_all('script', async=''):
tag['async'] = None
print(str(soup))
<script async src="test.js"></script>