2017-07-03 90 views
0

我使用下面的代码来使用python从网址中提取评论,但导出的csv不包含列中的所有评论。相反,它将数据导出到不同的列中。 我必须添加任何代码到现有的代码吗?Tripadvisor网页抓取使用python

import requests 
from unidecode import unidecode 
from bs4 import BeautifulSoup 
URL = "https://www.tripadvisor.in/Hotel_Review-g295424-d1735662-Reviews- 
Winchester_Grand_Hotel_Apartments-Dubai_Emirate_of_Dubai/" 
r = requests.get(URL) 
soup = BeautifulSoup(r.content, 'html5lib') 

resultsoup = soup.find_all("p", {"class" : "partial_entry"}) 

with open('testreview.csv', 'w') as fid: 
    for review in resultsoup: 
     review_list = review.get_text() 
     fid.write(unidecode(review_list)) 
+0

我推荐使用'csv.writer'作为csv文件(https://docs.python.org/2/library/csv.html) – Peri461

回答

-1

您需要的全部内容可能是为要写入文件的行添加新的行字符('\ n')。

所有你需要的可能是添加一个新的行字符('\ n')到你要写入文件的行。

with open('testreview.csv', 'w') as fid: 
    for review in resultsoup: 
     review_list = review.get_text() 
     fid.write(unidecode(review_list+'\n'))