2016-10-11 100 views
1

我想輸出一些web刮信息到CSV。當我將它打印到屏幕上時,它就像我期望的那樣出來,但是當我輸出到csv時,它在每個字符之間都有逗號。我很愚蠢,但我錯過了什麼?逗號在BeautifulSoup CSV

這裏是我的相關Python代碼:

list_of_rows = [] 
for hotel in hotels: 
    for row in hotel.findAll('div', attrs={'class': 'listing_title'}): 
     list_of_rows.append(row.find('a').text.replace('\nspb;', '')) 

print(list_of_rows) 
outfile = open("./hotels.csv", "wb") 
writer = csv.writer(outfile) 
writer.writerows(list_of_rows) 
outfile.close() 

編輯:添加例子輸出

打印時,list_of_rows出來是這樣的:

[U 「130女王門」 ,u'Hotel 41' ,u'Egerton飯店 'u'The 里程碑飯店',u'The博蒙特」,u'COMO哈爾金,u'Taj 51 乙uckingham門套房公寓,u'The蒙塔古 花園,u'The戈林「 u'Haymarket酒店」,u'Amba酒店查林十字 ,u'Rosewood倫敦,u'Covent花園酒店「 ,u'The Connaught', u'The切斯特菲爾德梅費爾',u'The蒙卡爾姆倫敦大理石拱門', u'Corinthia酒店倫敦',u'The蘇荷酒店',u'四季酒店 倫敦在公園裏' ,u'The納德勒蘇荷 'u'Charlotte街酒店', u'The麗思倫敦,u'The納德勒維多利亞,u'Bulgari酒店,倫敦, U 「布朗酒店」,u'The拱門倫敦',u'The皮卡迪利倫敦西 結束',u'The Stafford倫敦',u'Ham院子酒店',u'Sofitel倫敦St 詹姆斯',u'Staybridge套房倫敦 - 沃克斯豪爾']

但是,當發送到csv有每個字母/空間之間的逗號。

+0

list_of_rows是最後一個常規列表還是一個嵌套列表? – roganjosh

+0

你可以添加一個'list_of_rows'包含的例子嗎? – mfitzp

+0

我認爲'list_of_rows'的詳細例子會有所幫助。 – Acepcs

回答

0

你應該爲嵌套列表,其中每個子列表代表一個單行提供數據。

data_mod = [[item] for item in list_of_rows] 

with open("./hotels.csv", "wb") as outfile: 
    writer = csv.writer(outfile) 
    for row in data_mod: 
     writer.writerow(row) 

# With writerows() being equivalent to the for loop + writerow()