Python записывает в CSV строку за строкой

У меня есть данные, к которым обращаются через HTTP-запрос и отправляются обратно сервером в формате, разделенном запятой, у меня есть следующий код:

site= 'www.example.com' hdr = {'User-Agent': 'Mozilla/5.0'} req = urllib2.Request(site,headers=hdr) page = urllib2.urlopen(req) soup = BeautifulSoup(page) soup = soup.get_text() text=str(soup) 

Содержание текста выглядит следующим образом:

 april,2,5,7 may,3,5,8 june,4,7,3 july,5,6,9 

Как сохранить эти данные в CSV-файле. Я знаю, что я могу сделать что-то в следующем порядке:

 import StringIO s = StringIO.StringIO(text) for line in s: 

Но я не уверен, как правильно правильно писать каждую строку в CSV

EDIT —> Спасибо за отзывы, как было предложено, решение было довольно простым и можно увидеть ниже.

Решение:

 import StringIO s = StringIO.StringIO(text) with open('fileName.csv', 'w') as f: for line in s: f.write(line) 

3 Solutions collect form web for “Python записывает в CSV строку за строкой”

Общий способ:

 ##text=List of strings to be written to file with open('csvfile.csv','wb') as file: for line in text: file.write(line) file.write('\n') 

ИЛИ

Использование CSV-записи:

 import csv with open(<path to output_csv>, "wb") as csv_file: writer = csv.writer(csv_file, delimiter=',') for line in data: writer.writerow(line) 

ИЛИ

Самый простой способ:

 f = open('csvfile.csv','w') f.write('hi there\n') #Give your csv text here. ## Python will convert \n to os.linesep f.close() 

Вы можете просто записать файл, как если бы вы записали обычный файл.

 with open('csvfile.csv','wb') as file: for l in text: file.write(l) file.write('\n') 

Если на всякий случай, это список списков, вы можете напрямую использовать встроенный модуль csv

 import csv with open("csvfile.csv", "wb") as file: writer = csv.writer(file) writer.writerows(text) 

Я бы просто написал каждую строку в файл, так как он уже находится в формате CSV:

 write_file = "output.csv" with open(write_file, "w") as output: for line in text: output.write(line + '\n') 

Я не могу вспомнить, как писать строки с перерывами на данный момент: p

Кроме того, вы можете взглянуть на этот ответ о write() , writelines() и '\n' .

  • Что такое StringIO в python, который используется в действительности?
  • python try: except: finally
  • Python командной строки 'входной поток файла'
  • Используйте случай для низкоуровневых os.open, os.fdopen и друзей?
  • Оптимизация строчной строки Python
  • Поведение Python select () странно
  • Почему я не могу дважды вызвать read () в открытом файле?
  • Чтение файла с использованием «open ()« vs »с open ()«
  • Python - лучший язык программирования в мире.