[英]How to remove anchor tags from soup Python
我正在使用Beautiful Soup讀取HTML數據。 閱讀后,我想刪除一些錨標簽。 這是我的代碼:
import urllib
from bs4 import BeautifulSoup
url=raw_input("enter url:")
html=urllib.urlopen(url).read()
soup=BeautifulSoup(html)
tags=soup('a')
標簽的輸出形式為:
[<a href="https://www.naukri.com/psu-government-jobs" target="_blank"
title="Govt. Jobs">Govt. Jobs</a>,
<a href="https://www.naukri.com/international-jobs" target="_blank"
title="International Jobs">International Jobs</a>,
<a href="https://www.naukri.com/top-company-jobs" target="_blank"
title="Jobs by Company">Jobs by Company</a>,
<a href="https://www.naukri.com/jobs-by-category" target="_blank"
title="Jobs by Category">Jobs by Category</a>,
<a href="https://www.naukri.com/top-jobs-by-designations" target="_blank"
title="Jobs by Designation">Jobs by Designation</a>,
<a target="_blank">Information</a>,
<a href="https://www.naukri.com/jobs-by-location" target="_blank"
title="Jobs by Location">Jobs by Location</a>,
<a href="https://www.naukri.com/top-skill-jobs" target="_blank"
title="Jobs by Skill">Jobs by Skill</a>]
我想刪除所有在標記之后出現的錨標記
" <a target="_blank">Information</a>"
我該怎么做?
假設標簽列表中的每個元素都是str類型,則可以執行以下操作:
將每個元素附加到新列表中,當您在某個元素中具有請求的字符串時,將其插入並中斷循環。
new_li = []
for tag in tags:
if "Information</a>" in tag:
new_li.append(tag)
break
else:
new_li.append(tag)
print (new_li)
您不必創建新列表,可以通過執行以下操作來修改同一數組:
for index in range(len(tags)):
if "Information</a>" in tags[index]:
index += 1
break
tags = tags [:index]
print (tags)
迭代列表中的每個元素,在遇到請求的字符串時中斷循環,然后使用限於相關索引的相同列表覆蓋列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.