2017-09-20 40 views
0

我使用Beautiful Soup網頁瀏覽了一些內容,我在腳本中返回了三個項目,並且想要將這些值分配給變量。從美麗的湯動態地分配變量到for循環中的項目

for categories in item_soup.find_all('div', {'class': 'breadcrumbs'}): 
    for categories in categories.find_all('a', {'title': ''}): 
     categories = categories.get_text() 
     print(categories) 

這將返回:

category1 
category2 
category3 

我怎麼可以指定單個變量對每一類供以後使用?我曾考慮過使用[0:1]切片技術,但每個值會返回切片字母。我試圖將項目轉換爲列表或設置,但沒有運氣。

乾杯,

回答

1

如果我的理解沒錯,你應該使用list店鋪所有類別:

result = []  
for categories in item_soup.find_all('div', {'class': 'breadcrumbs'}).categories.find_all('a', {'title': ''}): 
    categories = categories.get_text() 
    result.append(categories) 

此外,您還可以使用list comprehension

+0

謝謝,我看到的錯誤下面的時候試一下並打印一個具體的值。 打印(結果[1]) IndexError:列表索引超出範圍 打印(結果[0])將返回的整個列表,而不是第一個對象。 – Jack

+0

已解決:某些結果只返回1個對象,因此在這些實例中生成超出範圍的索引錯誤。增加了一個試圖解決索引錯誤的期望。 – Jack