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' .

  • Почему чтение нескольких файлов происходит в то же время медленнее, чем чтение последовательно?
  • Низкая производительность чтения на Python
  • Запись в новый каталог на Python без изменения каталога
  • ValueError: операция ввода-вывода в закрытом файле
  • StringIO в python3
  • Прочитайте небольшой случайный образец из большого CSV-файла в фрейм данных Python
  • Как печатать команды в Python?
  • Многопроцессорность Python безопасно записывается в файл
  • UnicodeEncodeError запись текста со специальным символом в файл
  • Как я могу удалить повторяющиеся строки из файла?
  • Удаление строки из файла на месте
  • Python - лучший язык программирования в мире.