python - 如何从没有 ID、类的网页中删除元素?
问题描述
如何从没有 ID 或类的网页中删除元素。
这是网站:
https://www.sentinelassam.com/north-east-india-news/assam-news/40-new-colleges-to-be-set-up-in-btc-assam-minister-himanta-biswa-sarma-516420
并且要删除的元素具有这样的结构:
<p><b>Also Read <a href="https://www.sentinelassam.com/national-news/iisfs-vigyan-yatra-flagged-off-from-various-indian-cities-516407">IISF's 'Vigyan Yatra' flagged off from various Indian cities</a></b></p>
该Also Read
文本在网页上的多次出现中很常见。如果我可以删除一个元素,那么一个循环将删除所有这些(我认为)。
可以使用Also Read
文本删除整个元素吗?我尝试使用decompose()
但我在哪里应用这种decompose()
方法?
解决方案
使用 Chrome 或任何其他浏览器的开发者工具。找到要删除的元素,然后右键单击该元素选择Copy > Copy selector
。这会给你一个像这样的选择器:
#details-page-infinite-scrolling-data > div.article > div.article-text-desc > div > div > p:nth-child(22) > b > a
这个选择器可能可以简化。现在您可以使用 BeautifulSoup 将其删除:
selector = "#details-page-infinite-scrolling-data > div.article > div.article-text-desc > div > div > p:nth-child(22) > b > a"
soup.select_one(selector).decompose()
我没有测试它。
推荐阅读
- asp.net - 包括 CSS 和 JavaScript 作为 Web 表单用户控件并使其尽可能快
- javascript - 如何在laravel中使用对象数据数组进行ajax发布
- google-bigquery - 我在哪里可以在我的 BigQuery 中找到广告系列级否定关键字(从 Google Ads 传输数据后)?
- javascript - 使用 render_template 在 Flask 中未正确显示阿姆哈拉语字体
- swift - 为什么 500/1000 打印的是 0?
- javascript - 同时可选择和拖动(JavaScript)?
- apache-beam - 无法使用 apache beam python 将 json 写入 Pubsub 主题
- swift - 自定义纸张设置文件中的错误信息 (Brother TD-4550DNWB)
- shell - 使用 vim 编辑器打开 shell 变量(使用路径分配)
- math - 投影矩阵的划分