Ограничение публикации электронных таблиц Google

Я тестирую новые электронные таблицы Google, так как есть новая функция, которая мне действительно нужна: ограничение на 200 листов было снято (подробнее здесь: https://support.google.com/drive/answer/3541068 ).

Однако я не могу опубликовать таблицу в CSV, как вы можете в старой версии. Я перехожу в «Файл»> «Опубликовать в Интернете», и больше нет вариантов публикации «всех листов» или определенных листов, и вы не можете указывать диапазоны ячеек для публикации в CSV и т. Д.

Это ограничение не упоминается в опубликованной документации «Неподдерживаемые характеристики», расположенной по адресу: https://support.google.com/drive/answer/3543688

Есть ли какой-либо другой способ, который активируется, или его фактически оставили в стороне от новой версии?

Мой вариант использования: мы извлекаем результаты Bigquery в электронные таблицы, мы публикуем листы как CSV автоматически, используя функцию «публиковать автоматически при обновлении», которая затем создает URL-адрес CSV, который помещается в инструменты построения диаграмм, которые читают URL-адрес CSV для создания визуалы.

Кто-нибудь знает как это сделать?

    В новых таблицах Google используется другой URL-адрес (просто скопируйте ):

    • Новый лист: https://docs.google.com/spreadsheets/d//pubhtml
    • CSV-файл: https://docs.google.com/spreadsheets/d//export?gid=&format=csv

    GUID вашей таблицы относится к номеру табуляции.

    /! \ Вы должны поделиться своим документом с помощью Anyone с настройкой ссылки .

    Вот решение, просто напишите его вот так:

    https://docs.google.com/spreadsheets/d/ < KEY >/ export?format=csv & id= < KEY >

    Я знаю, что странно писать KEY дважды, но он отлично работает. Сотрудник по команде обнаружил это, открыв файл Excel в Документах Google, затем Файл -> Загрузить как -> значения, разделенные запятой. Затем в разделе загрузки браузера появится ссылка на файл CSV, например: https://docs.google.com/spreadsheets/d/ / export? Format = csv & id = & gid = < НЕКОТОРЫЙ НОМЕР> Но это не работает в этом формате, мой друг сделал удаление «& gid = <НЕКОТОРЫЙ НОМЕР>», и это сработало! Надеюсь, это поможет всем.

    Это не поможет всем, но я сделал PHP-скрипт для чтения HTML в массив.

    Я добавил конвертацию обратно в CSV в конце. Надеюсь, это поможет некоторым людям, имеющим доступ к PHP.

     $html_link = "https://docs.google.com/spreadsheets/d/XXXXXXXXXX/pubhtml"; $local_html = "sheets.html"; $file_contents = file_get_contents($html_link); file_put_contents($local_html,$file_contents); $dom = new DOMDocument(); $html = @$dom->loadHTMLFile($local_html); //Added a @ to hide warnings - you might remove this when testing $dom->preserveWhiteSpace = false; $tables = $dom->getElementsByTagName('table'); $rows = $tables->item(0)->getElementsByTagName('tr'); $cols = $rows->item(0)->getElementsByTagName('td'); //You'll need to edit the (0) to reflect the row that your headers are in. $row_headers = array(); foreach ($cols as $i => $node) { if($i > 0 ) $row_headers[] = $node->textContent; } foreach ($rows as $i => $row){ if($i == 0 ) continue; $cols = $row->getElementsByTagName('td'); $row = array(); foreach ($cols as $j => $node) { $row[$row_headers[$j]] = $node->textContent; } $table[] = $row; } //Convert to csv $csv = ""; foreach($table as $row_index => $row_details){ $comma = false; foreach($row_details as $value){ $value_quotes = str_replace('"', '""', $value); $csv .= ($comma ? "," : "") . ( strpos($value,",")===false ? $value_quotes : '"'.$value_quotes.'"' ); $comma = true; } $csv .= "\r\n"; } //Save to a file and/or output file_put_contents("result.csv",$csv); print $csv; 

    Если вы включили «Любой, у кого есть общий доступ к ссылкам» для электронной таблицы, вот простой способ получить диапазон ячеек или столбцов (или, что вам нравится), экспортировать в формате HTML, CSV, XML, JSON по запросу:

    https://docs.google.com/spreadsheet/tq?key=YOUR-KEY&gid=1&tq=select%20A,%20B&tqx=reqId:1;out:html;%20responseHandler:webQuery

    • Для ссылки на язык запроса чтения tq .
    • Для ссылки формата запроса чтения tqx .

    Недостатком этого является то, что ваш документ все еще доступен в полной мере через общедоступную ссылку, но если вы хотите экспортировать / импортировать данные, чтобы сказать Excel, это идеальный способ.

    Правильный URL для загрузки электронной таблицы Google в формате CSV:

     https://docs.google.com/spreadsheets/export?id=&exportFormat=csv 

    Вот еще одно временное, не-PHP-решение:

    1. Перейдите к существующей новой странице google
    2. Перейдите в «Файл -> Создать -> Электронная таблица»
    3. В разделе «Файл -> Опубликовать в Интернете …» теперь есть возможность опубликовать версию csv

    Я считаю, что это фактически создает старый лист Google, но для моих целей (импорт данных листа Google с клиентов или меня в R для статистического анализа) он работает, пока они, надеюсь, не обновят эту функцию.

    Я также разместил это на форуме групп Google, пожалуйста, здесь:

    https://productforums.google.com/forum/#!topic/docs/An-nZtjaupU

    Эта новая функция, похоже, исчезла. Я не вижу возможности опубликовать версию csv / tsv. Я могу загрузить tsv / csv с помощью экспорта, но это недоступно для других людей с помощью только ссылки (она перенаправляет их в форму входа в google docs).

    Я нашел исправление! Поэтому я обнаружил, что старые таблицы перед этим изменением все еще позволяют публиковать только определенные листы. Поэтому я сделал копию старой таблицы, очистил данные, скопировал и вложил в нее текущую информацию, и теперь я счастливо публикую только один лист моей большой таблицы. ура

    Я смог выполнить запрос к результату, см. Эту таблицу

     https://docs.google.com/spreadsheets/d/1LhGp12rwqosRHl-_N_N8eTjTwfFsHHIBHUFMMyhLaaY/gviz/tq?tq=select+A,B,I,J,K+where+B%3E=4.5&pli=1 

    электронная таблица извлекает данные из землетрясения, но я просто хочу выбрать землетрясения MAG 4.5+, поэтому он делает запрос и столбцы, просто проблема:

    Я не могу разобрать результат, я пытался декодировать как json, но не смог его разобрать. Я хотел бы показать это как HTML или CSV или как разбирать это? например, чтобы иметь возможность отображать его на карте Google.

    Текущие ответы больше не работают. Для меня работало следующее:

    • Сделайте Файл -> «Опубликовать в Интернете» и выберите «начать публикацию» и формат. Я выбираю текст (который является TSV)
    • Теперь просто скопируйте URL-адрес, который будет похож на https://docs.google.com/spreadsheet/pub?key=YOUR_KEY&single=true&gid=0&output=txt
    Давайте будем гением компьютера.