要解决BeautifulSoup在锚点标签的情况下将文本分散到更多行的问题,可以使用以下代码示例:
from bs4 import BeautifulSoup
html = '''
Link This is some text.
'''
soup = BeautifulSoup(html, 'html.parser')
p_tag = soup.find('p')
text = ''.join(p_tag.find_all(text=True, recursive=False))
print(text.strip())
在上面的代码中,我们首先导入了BeautifulSoup
类,然后定义了包含锚点标签的HTML代码。然后,我们使用BeautifulSoup
类将HTML代码解析为一个Soup
对象。
接下来,我们使用find
方法找到了第一个标签,并使用
find_all
方法对其进行了递归查找所有文本节点。然后,我们使用join
方法将这些文本节点连接在一起,并使用strip
方法去除首尾的空格。
最后,我们打印了提取到的文本。
运行上述代码将输出:Link This is some text.