2017-09-22 80 views
0

我有我試圖刮如何用美麗的湯和蟒蛇

<span class="title NSNTitle"> 
     <small class="text-primary"><strong> 
     ID 1040-KK-143-6964, 1040001436964 
     </strong></small> 
     <br> 
     <small class="text-primary"> 
      MODIFICATION KIT, 
    </small> 
</span> 

我使用此代碼

page_soup = soup(page_html, "html.parser") 
    FSGcontainer = page_soup.find("h1", {"class": "nopad-top"}).find_all("small", {"class": "text-primary"}) 
    for subcontainer in FSGcontainer: 
     FSGsubcard = subcontainer 

     if FSGsubcard is not None: 
      Nomenclature = FSGsubcard.text 

      print(Nomenclature) 

這個HTML標記提取站點的文字,我得到這個輸出

NSN 1040-KK-143-6964, 1005009927288 


            MODIFICATION KIT, 

我真正想要的是文本「修改工具包」, 我怎樣才能捕獲文本和不是ID?

回答

0

使用select_one以及選擇第二個small元素的css選擇器。

nomenclature = page_soup.find("h1", 
          {"class": "nopad-top"} 
         ).select_one(
          'small:nth-of-type(2)' 
         ).text.strip() 
+0

由於某種原因,它打印出三個重複。即修改工具包(三次),你知道爲什麼嗎? – learner101

+0

你在循環中使用這個嗎? –

0

試試這個。它會讓你獲取你想要的特定項目。

for item in soup.find_all(class_="title"): 
    text_item = item.find_all(class_="text-primary")[1].text 
    print(text_item) 

結果:

MODIFICATION KIT 
+0

你試過這段代碼嗎? – SIM