2016-03-25 17 views
0

Metni 'column-1' td sınıfında almaya çalışıyorum ve öznitelik metnine sahip olmadığından bazı sorun yaşıyorum - ama açıkça yanlış bir şey yapmam gerekiyor. Ben dışarı hattı 2 alabilir ve bir sonuç elde yukarıda sadece "bölümünü" baskı ama sadece sütun-1 tüm td oluşturuyorsapython beautifulsoup findall'u bulmak için

import urllib 
import urllib.request 
from bs4 import BeautifulSoup 

theurl="http://vermontamerican.com/products/standard-drill-bit-extensions/" 
thepage = urllib.request.urlopen(theurl) 
soup = BeautifulSoup(thepage,"html.parser") 

for part in soup.find_all('td'),{"class":"column-1"}: 
    part1 = part.text 
    print(part1) 

: İşte kodudur. Ayrıca bunu denedim ama ben yeniyim, bunun yanlış olduğundan eminim.

import urllib 
import urllib.request 
from bs4 import BeautifulSoup 

theurl="http://vermontamerican.com/products/standard-drill-bit-extensions/" 
thepage = urllib.request.urlopen(theurl) 
soup = BeautifulSoup(thepage,"html.parser") 


for part in soup.find('tbody'),{"class":"row-hover"}: 
    for part1 in part.find_all('a'): 
     print(part1) 

cevap

1

Sen find_all() fonksiyonu içine nitelik seçimi sözlüğünü iletmediğinizi. Değiştir:

for part in soup.find_all('td'),{"class":"column-1"}: 

ile:

for part in soup.find_all('td', {"class":"column-1"}): 

Şimdi kod üretecektir:

17103 
17104 
+0

Ah benim bir aptal olduğumu !! Teşekkür ederim!! – PatrickP76