Lstrip 和 Rstrip 不起作用,需要帮助从 Python 3 中的输出中删除文本



输出是列表的一部分。当我尝试使用 type(( 找出输出的类型时,它会返回:<类>。

我正在尝试删除"href"左侧的所有内容和"

以下是我列表中的某个输出的示例:

<a class="BlogList-item-image-link" href="/new-blog/nova-approval">
<img alt="Nova Approval" data-image="https://static1.squarespace.com/static/54ceeff4e4b0d9096117315a/5a3ff7e48165f5d70b78414a/5a504ba90d9297f9a55e4ab6/1516062801655/7P1A5814+cropped.jpg" data-image-dimensions="2432x2688" data-image-focal-point="0.5,0.5" data-load="false" data-src="https://static1.squarespace.com/static/54ceeff4e4b0d9096117315a/5a3ff7e48165f5d70b78414a/5a504ba90d9297f9a55e4ab6/1516062801655/7P1A5814+cropped.jpg"/>
</a>

使用lstriprstrip不会是答案。

您是否尝试过查看 bs4 文档?

因为输出的类型是 bs4 对象。您只需找到对象的属性即可获取href

<a class="BlogList-item-image-link" href="/new-blog/nova-approval">
<img alt="Nova Approval" data-image="https://static1.squarespace.com/static/54ceeff4e4b0d9096117315a/5a3ff7e48165f5d70b78414a/5a504ba90d9297f9a55e4ab6/1516062801655/7P1A5814+cropped.jpg" data-image-dimensions="2432x2688" data-image-focal-point="0.5,0.5" data-load="false" data-src="https://static1.squarespace.com/static/54ceeff4e4b0d9096117315a/5a3ff7e48165f5d70b78414a/5a504ba90d9297f9a55e4ab6/1516062801655/7P1A5814+cropped.jpg"/>
</a>
from bs4 import BeautifulSoup
soup = BeautifulSoup('html') #put the link there
links = soup.find_all('a') # All of the anchor tags in a list
for link in links:
print(link.get('href'))

这将打印 HTML 文件中的所有href值。

您可能正在尝试提取 href 中的链接。为此,您无需剥离字符串。你可以通过以下方式做到这一点——

string =  '''<a class="BlogList-item-image-link" href="/new-blog/nova-approval">
<img alt="Nova Approval" data-image="https://static1.squarespace.com/static/54ceeff4e4b0d9096117315a/5a3ff7e48165f5d70b78414a/5a504ba90d9297f9a55e4ab6/1516062801655/7P1A5814+cropped.jpg" data-image-dimensions="2432x2688" data-image-focal-point="0.5,0.5" data-load="false" data-src="https://static1.squarespace.com/static/54ceeff4e4b0d9096117315a/5a3ff7e48165f5d70b78414a/5a504ba90d9297f9a55e4ab6/1516062801655/7P1A5814+cropped.jpg"/>
</a>'''

print( string[string.find('href="')+6:string.find('>')-1] )

输出:

/new-blog/nova-approval

在上面的print()语句中,string.find('href="')将返回该字符串的索引,然后我们从该索引 + 6 循环到 href 标签的末尾。这是假设>紧随其后的href.

希望这有帮助!

相关内容

  • 没有找到相关文章

最新更新