Inserting an element at a specified position in a tag in Beautiful Soup
Start your free 7-days trial now!
To insert a string or an element at a specified position in a tag in Beautiful Soup, use the
insert(~) is analogous to a Python list's
insert(~) method; it takes in the following two arguments:
the index at which to place the element
the string or element to insert
Consider the following HTML document:
my_html = "<p><b>I</b> enjoy <b>scraping</b> the web</p>soup = BeautifulSoup(my_html)
Here, there are 5 locations where we can insert new content:
"<p>*<b>I</b>* enjoy *<b>scraping</b>* the web*</p>"
The 5 locations are indicated by a
To insert a string or element at the last
*, you should use
Tag.append(~) method instead.
Inserting a string
Let's insert some string at the 2nd
* (i.e. 1st index):
Inserting an element
Let's insert an element at the 3rd
* (i.e. 2nd index):