Python and BeautifulSoup4's BS4's Decompose Method To Remove Unwanted Inner Tags

<div class="c-shca-icon-item__body-name">

    < a href="/Products/MX72244">
        < span class="c-shca-icon-item__body-name-brand">

            ADATA
            < / span>
                XPG SX8200 PCI - E 3.0 x4 M .2 NVMe SSD, 480 GB
                < / a>


The problem in the html above is that there is a "span" inside the "a" and this is unusual except for a few products with ADATA.
Otherwise it would print out ADATA with the other product information "XPG SX8200 PCI - E 3.0 x4 M .2 NVMe SSD, 480 GB".  So we just want the product info and not the ADATA inside span.

The solution is to use beautifulsoup's "decompose method below".



    hddname = prices.find("div", {"class": "c-shca-icon-item__body-name"})
    hddname=hddname.find("a")
    hddname.span.decompose()
    hddname=hddname.get_text().strip()

 

Once we have the "a" tag contents which contain a "span inside".  We just use the decompose() method.

The format is as follows

soupname.tagname.decompose()


Tags:

python, beautifulsoup, bs, decompose, method, unwanted, tags, div, quot, shca, icon, item__body, href, products, mx, span, adata, xpg, sx, pci, nvme, ssd, gb, html, info, hddname, prices, get_text, contents, contain, format, follows, soupname, tagname,

Latest Articles

  • python mysql install error: /bin/sh: 1: mysql_config: not found /bin/sh: 1: mariadb_config: not found /bin/sh: 1: mysql_config: not found mysql_config --version
  • FreePBX 17 How To Add a Trunk
  • Docker Container Onboot Policy - How to make sure a container is always running
  • FreePBX 17 How To Add Phones / Extensions and Register
  • Warning: The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes. solution
  • Cisco How To Use a Third Party SIP Phone (eg. Avaya, 3CX)
  • Cisco Unified Communication Manager (CUCM) - How To Add Phones
  • pptp / pptpd not working in DD-WRT iptables / router
  • systemd-journald high memory usage solution
  • How to Install FreePBX 17 in Linux Debian Ubuntu Mint Guide
  • How To Install Cisco's CUCM (Cisco Unified Communication Manager) 12 Guide
  • Linux Ubuntu Redhat How To Extract Images from PDF
  • Linux and Windows Dual Boot Issue NIC Won't work After Booting Windows
  • Cisco CME How To Enable ACD hunt groups
  • How to install gns3 on Linux Ubuntu Mint
  • How to convert audio for Asterisk .wav format
  • Using Cisco CME Router with Asterisk as a dial-peer
  • Cisco CME How To Configure SIP Trunk VOIP
  • Virtualbox host Only Network Error Failed to save host network interface parameter - Cannot change gateway IP of host only network
  • Cisco CME and C7200 Router Testing and Learning Environment on Ubuntu 20+ Setup Tutorial Guide