near_me
Linear Algebra
keyboard_arrow_down 54 guides
chevron_leftTag Cookbook
Appending multiple strings to a tag's contentAppending to a tag's contentConverting from tag object to stringGetting the position of a tagInserting an element at a specified position in a tagInserting strings or elements after a tagInserting strings or elements before a tagRemoving both tag and inner contentRemoving inner content of a tagReplacing a tag and its inner contentReplacing inner text of a tagReplacing the tag name of an elementStripping the tag of an elementWrapping a tag with another tag
check_circle
Mark as learned thumb_up
2
thumb_down
0
chat_bubble_outline
0
Comment auto_stories Bi-column layout
settings
Getting the position of a tag in Beautiful Soup
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!
BeautifulSoup gives us the following two positional information about a tag:
line number, which is accessed using the
sourceline
propertystarting index of the tag in the line, which is using the
sourcepos
property
Example
Consider the following HTML document:
my_html = """ <p>Alex is 5years old</p> <p id="bob">Bob is <b>10</b> years old</p> <p>Cathy is 15 years old</p>"""soup = BeautifulSoup(my_html, "html.parser")
To get the line number and the starting index of Bob's age tag, <b>10</b>
:
Note the following:
We get a 3 for the line number instead of a 2 because we've added a line break after """ in the HTML document.
The starting index 25 means that there is a total of 25 characters that come before the
b
tag.
WARNING
This only works when you're using either "html.parser"
or "html5lib"
for the parser.
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...
thumb_up
2
thumb_down
0
chat_bubble_outline
0
settings
Enjoy our search
Hit / to insta-search docs and recipes!