在 Beautiful Soup 中,标签或字符串的 next_siblings
属性返回一个生成器,用于迭代同一父级下的所有后续标签和字符串。
例子
考虑以下 HTML 文档:
my_html = """
<div>
<p>Alex</p>
<p>Bob</p>
</div>
"""
soup = BeautifulSoup(my_html)
让我们获取 <p>Alex</p>
的 next_siblings
:
p_alex = soup.find("p")
for s in p_alex.next_siblings:
print(repr(s))
'\n'
<p>Bob</p>
'\n'
<p>Cathy</p>
'\n'
在这里,我们使用 repr(~)
方法来转义换行符,以便您可以显式看到 '\n'
而不是空行。为了解决这个问题,<p>Alex</p>
的 next_sibling
是一个换行符,这对于那些希望看到 <p>Bob</p>
的人来说可能会感到惊讶。出现这样的结果是因为 <p>Alex</p>
和 <p>Bob</p>
之间存在换行符 \n
。
如果您只想访问下一个同级元素,那么更好的选择是调用 find_next_siblings()
方法:
p_alex = soup.find("p")
for s in p_alex.find_next_siblings():
print(repr(s))
<p>Bob</p>
<p>Cathy</p>
相关用法
- Python BeautifulSoup next_sibling属性用法及代码示例
- Python BeautifulSoup next_element属性用法及代码示例
- Python BeautifulSoup next_elements属性用法及代码示例
- Python next方法用法及代码示例
- Python next()用法及代码示例
- Python networkx.algorithms.shortest_paths.weighted.all_pairs_dijkstra_path用法及代码示例
- Python networkx.classes.function.edge_subgraph用法及代码示例
- Python networkx.algorithms.tree.mst.maximum_spanning_edges用法及代码示例
- Python networkx.algorithms.bipartite.basic.color用法及代码示例
- Python networkx.algorithms.bipartite.cluster.latapy_clustering用法及代码示例
- Python networkx.readwrite.json_graph.adjacency_data用法及代码示例
- Python networkx.algorithms.bipartite.edgelist.generate_edgelist用法及代码示例
- Python networkx.Graph.neighbors用法及代码示例
- Python networkx.DiGraph.__contains__用法及代码示例
- Python networkx.drawing.nx_pylab.draw_random用法及代码示例
- Python networkx.convert_matrix.to_pandas_edgelist用法及代码示例
- Python networkx.DiGraph.__init__用法及代码示例
- Python networkx.algorithms.cycles.recursive_simple_cycles用法及代码示例
- Python networkx.drawing.layout.random_layout用法及代码示例
- Python networkx.algorithms.link_prediction.within_inter_cluster用法及代码示例
- Python networkx.algorithms.non_randomness.non_randomness用法及代码示例
- Python networkx.algorithms.traversal.depth_first_search.dfs_tree用法及代码示例
- Python networkx.MultiGraph.clear用法及代码示例
- Python networkx.algorithms.operators.product.cartesian_product用法及代码示例
- Python networkx.algorithms.traversal.depth_first_search.dfs_labeled_edges用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 BeautifulSoup | next_siblings property。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。