我需要编辑一个漂亮的脚本大量的html文件。我的一些html文件包含如下所示的块,其中img标记嵌套在一个标记中
<p>
<a class="" data-api-endpoint="https://hcpss.instructure.com/api/v1/courses/124/grade-1-routines" data-api-returntype="Page" href="grade-1-routines.html" id="" target="" title="">
<img alt="1-icon-file-download.png" data-api-endpoint="https://hcpss.instructure.com/api/v1/courses/124/files/3523713" data-api-returntype="File" src="1-icon-file-download.png"/>
</a>
<a class="instructure_file_link instructure_scribd_file" data-api-endpoint="https://hcpss.instructure.com/api/v1/courses/124/files/3523689" data-api-returntype="File" href="closure_at_a_glance.docx" id="" target="" title="closure_at_a_glance.docx">
Closure at a Glance
</a>
</p>
这个标签链导致我导入html文件的程序出现问题。为了解决这个问题,我想将周围的a标记全部移除,这样结果就会像这样
<p>
<img alt="1-icon-file-download.png" data-api-endpoint="https://hcpss.instructure.com/api/v1/courses/124/files/3523713" data-api-returntype="File" src="1-icon-file-download.png"/>
<a class="instructure_file_link instructure_scribd_file" data-api-endpoint="https://hcpss.instructure.com/api/v1/courses/124/files/3523689" data-api-returntype="File" href="closure_at_a_glance.docx" id="" target="" title="closure_at_a_glance.docx">
Closure at a Glance
</a>
</p>
我在这里尝试了一个脚本
for img in soup.find_all('img'):
if img.parent.name == 'a':
img.parent.decompose()
print(img)
运行脚本会产生
<None></None>
并导致和标记都被删除。我可以做些什么来修改这个脚本,以便只有父脚本被删除,而子脚本取代它
您可以使用^{} :
输出:
相关问题 更多 >
编程相关推荐