near_me
Linear Algebra
keyboard_arrow_down 54 guides
chevron_leftDocumentation
Method findMethod find_parentMethod find_parentsMethod insertMethod insert_afterMethod insert_beforeMethod new_tagMethod prettifyMethod extendMethod appendMethod has_attrMethod find_allMethod select_oneMethod selectMethod unwrapMethod wrapMethod replace_withProperty previous_elementsProperty next_elementsProperty parentProperty previous_elementProperty next_siblingsProperty previous_siblingsProperty stringsProperty stripped_stringsProperty contentsProperty childrenProperty next_elementMethod extractMethod find_all_nextProperty previous_siblingMethod find_previous_siblingMethod find_next_siblingProperty next_siblingProperty stringMethod find_nextMethod clearProperty descendantsProperty parentsMethod get_textMethod decompose
check_circle
Mark as learned thumb_up
3
thumb_down
1
chat_bubble_outline
0
Comment auto_stories Bi-column layout
settings
Beautiful Soup | find_all_next method
schedule Aug 10, 2023
Last updated local_offer
Tags Python●Beautiful Soup
tocTable of Contents
expand_more Master the mathematics behind data science with 100+ top-tier guides
Start your free 7-days trial now!
Start your free 7-days trial now!
Beautiful Soup's find_all_next(~)
method returns tags that come after the current tag. This method takes in the exact same parameters as find_all(~)
.
If no parameter is specified, then all tags will be returned.
Examples
Basic usage
Consider the following HTML document:
my_html = """ <p id="alex">Alex</p> <p>Bob</p> <p id="cathy">Cathy</p>"""soup = BeautifulSoup(my_html, "html.parser")
To find all tags that come after Alex's tag:
p.find_all_next()
[<p>Bob</p>, <p id="cathy">Cathy</p>]
To find all tags with id="cathy"
after Alex's tag:
p.find_all_next(id="cathy")
[<p id="cathy">Cathy</p>]
Case when parent is not shared
A common source of confusion is when we have the following HTML document:
my_html = """ <div> <p id="alex">Alex</p> </div> <p>Bob</p>"""soup = BeautifulSoup(my_html, "html.parser")
Here, Bob's tag does not share the same parent as Alex's tag. Calling find_all_next(~)
on Alex's tag yields:
p = soup.find(id="alex")p.find_all_next()
[<p>Bob</p>]
Notice how find_all_next(~)
returns tags that come after the current tag in the HTML document.
Published by Isshin Inada
Edited by 0 others
Did you find this page useful?
thumb_up
thumb_down
Comment
Citation
Ask a question or leave a feedback...
Official Beautiful Soup Documentation
https://www.crummy.com/software/BeautifulSoup/bs4/doc/#find-all-next-and-find-next
thumb_up
3
thumb_down
1
chat_bubble_outline
0
settings
Enjoy our search
Hit / to insta-search docs and recipes!