На самом деле, вопрос не столь уж и тривиален, как может показаться на первый взгляд. Формат , как следует из его названия, подразумевает использование в качестве разделителя символ запятой (,). Однако, многие программы и сервисы допускают использованием и других символов. К таковым можно отнести и MS Excel, особенно если речь идёт о русифицированной его версии. В данной статье я хочу привести решение проблемы с открытием CSV-файла экспорта из Google инструмента для веб-мастеров в MS Excel. Впрочем, тема актуально и для других вариантов.
Содержание:
- Проблема экспорта поисковых запросов (ПЗ) из Google вебмастер
- CSV с разделителем запятая в UTF-8
-
- Проблема с кодировкой
- Разделитель запятая в CSV
- То, что помогло
- Онлайн сервис для нормализации CSV-файлов
- Подведём итоги
Проблема экспорта ПЗ из Google вебмастер
Многие из нас используют Google инструмент для веб-мастеров только для добавления сайта. Это неправильно, здесь есть масса полезной информации, например список поисковых запросов, по которым пользователи находят и заходят на сайт. Смотрите отчет: Поисковый трафик > Поисковые запросы — предварительно выбрав нужный сайт в списке.
Здесь же есть и экспорта данных в CSV-формате, с возможностью его открытия в Google Таблицы (онлайн аналог Excel). Ищите кнопку «Загрузить эту таблицу». К слову, количество отображаемых запросов на странице не влияет на полноту экспортируемых данных.
Проблема в том, что в CSV-файле используется разделитель запятой и кодировка UTF-8. Так что даже в Google Таблицы, вместо кириллицы, вы получите только набор вопросов.
Другими словами, нам нужно изменить кодировку на ANSI. А для открытия файла CSV в Excel заменить и разделитель запятой (,) на символ точки с запятой (;).
CSV с разделителем запятая в UTF-8
Проблема с кодировкой
Проще всего решить проблему с кодировкой. Для этого вы можете использовать любой текстовый редактор с этой функцией, например Notepad++. Его вы можете скачать бесплатно на официальном сайте: unotepad-plus-plus.org. Далее запускаем редактор и открываем в нём наш CSV-файл, а потом кликаем пункт меню «Кодировки» и меняем на нужную, т.е. пункт «Преобразовать в ANSI».
У меня на картинке показан обратный процесс: преобразования из ANSI в UTF-8 — но, думаю, вы это и сами заметилии, а принцип тот же.
Разделитель запятая в CSV
Теперь, что касается разделителя запятой. По сути, для Google Таблиц что-то менять не надо. Да и в англоязычной версии MS Excel это может прокатить, проверьте. Тем не менее, если нужна замена, то здесь следует учесть, что просто заменить запятую (,) на символ точки с запятой (;) не получится, т.к. в файле могут быть значения, содержащие этот символ. Они обычно помещены в кавычки. Например:
значение,1,”значение, с запятой«,
По идее здесь должна помочь настройка самой операционной системы Windows: Пуск > Панель управления > Язык и региональные стандарты. На вкладке «Форматы» кликаем кнопку «Изменить этот формат…» В открывшемся окне, на вкладке «Числа» замените «Разделитель элементов списка» на нужный, т.е. символ точки с запятой (;) меняем на запятую (,).
Правда, у меня это не сработало. Да и менять настройки операционной системы, как по мне, дело не благодатное. Тем не менее, я решил указать этот вариант решения проблемы, т.к. на большинстве специализированных форумов ссылаются именно на него.
То, что помогло
Увы, но какой-то дополнительной обработки файлов с расширением .csv
в MS Excel я не нашел. Тем не менее, есть возможность обработки, но только в том случае, если сменить расширение файла, например, на .txt
. Так что меняем расширение файла и открываем его в Excel.
Появится окно «Мастер текстов (импорт)». Здесь вы можете выбрать формат исходных данных, начальную строку импорта и кодировку файла (нам нужна 1251 : Cyrillic
). К слову, почему нужно было менять кодировку, когда её можно выбрать в мастере? Потому, что кодировки UTF-8, по крайней мере у меня, здесь нету. Кликаем кнопку «Далее».
На следующем шаге мы можем выбрать символ-разделитель, причем несколько. Ставим галочку «запятая» и убираем галочку «знак табуляции». Здесь же можно выбрать и символ ограничителя строк. Это тот, что используется для значений, в которых присутствуют спецсимволы (двойные кавычки, запятая, точка с запятой, новая строка и т.д.). Вариант с двойной кавычкой, в моём случае, это то, что надо. Обратите внимание на поле «Образец разбора данных», данные стали таблицей. Кликаем кнопку «Далее».
На последнем шаге можно указать формат данных столбцов, правда выбор здесь не велик: общий (по умолчанию), текстовый, дата и пропустить столбец. Последний вариант представляется мне наиболее интересным, т.к. позволяет сразу исключить ненужные столбцы. Просто выберите соответствующий столбец и кликните для него вариант «пропустить столбец». Кликаем кнопку «Готово».
Excel сформирует нужную нам таблицу, где мы можем задать нужную ширину столбцов и формат ячеек, но это уже совсем другая история. Отмечу лишь, что есть проблема с распознанием тех же процентов.
Онлайн сервис для нормализации CSV-файлов
Впрочем, все выше изложенные проблемы решает простой онлайн сервис Normalization CSV. Он позволяет менять кодировку и символ разделителя. Правда существует ограничение в 64 000 байтов (сколько это в Кб?) для загружаемого файла, но CSV-файлы обычно весят не очень много, должно хватить. Результат обработки выводится как обычный текстовый файл, его можно сохранить с расширением .csv
.
К слову, скрипт преобразовавает значение процентов, например: 95 %
— в нужное значение для столбца «проценты» в Excel, т.е. делится на 100 и получаем число с плавающей запяток, например: 0,95
. Если нужны ещё какие-то преобразования: пишите, попробуем доработать.
Ну, а если предложенный онлайн сервис вас не устраивает, вы всегда можете воспользоваться выше приведённой инструкцией.
Подведём итоги
Некоторые онлайн сервисы предоставляют возможность экспорта данных в просто и удобном CSV-формате. Как следует из названия, подразумевает использование в качестве разделителя символ запятой (,). Однако, многие приложения трактуют этот формат несколько своевольно, что приводит к закономерным проблемам. К тому же сейчас всё более популярна кодировка UTF-8, в то время как Excel или Google Таблицы используют ANSI.
Решить проблему с кодировкой поможет, к примеру, Notepad++, а для того, чтобы разобраться с разделителем, достаточно изменить расширение файла на .txt и воспользоваться мастером текстов в Excel. Впрочем, все эти задачи способен решить бесплатный онлайн сервис Normalization CSV, правда стоит учесть его ограничение на объём загружаемого файла. На этом у меня всё. Спасибо за внимание. Удачи!
Короткая ссылка: https://goo.gl/rAe1Xb