GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Net::Google::Spreadsheets(3) User Contributed Perl Documentation Net::Google::Spreadsheets(3)

Net::Google::Spreadsheets - A Perl module for using Google Spreadsheets API.

  use Net::Google::Spreadsheets;

  my $service = Net::Google::Spreadsheets->new(
    username => 'mygoogleaccount@example.com',
    password => 'mypassword'
  );

  my @spreadsheets = $service->spreadsheets();

  # find a spreadsheet by key
  my $spreadsheet = $service->spreadsheet(
    {
        key => 'key_of_a_spreasheet'
    }
  );

  # find a spreadsheet by title
  my $spreadsheet_by_title = $service->spreadsheet(
    {
        title => 'list for new year cards'
    }
  );

  # find a worksheet by title
  my $worksheet = $spreadsheet->worksheet(
    {
        title => 'Sheet1'
    }
  );

  # create a worksheet
  my $new_worksheet = $spreadsheet->add_worksheet(
    {
        title => 'Sheet2',
        row_count => 100,
        col_count => 3,
    }
  );

  # update cell by batch request
  $worksheet->batchupdate_cell(
    {row => 1, col => 1, input_value => 'name'},
    {row => 1, col => 2, input_value => 'nick'},
    {row => 1, col => 3, input_value => 'mail'},
    {row => 1, col => 4, input_value => 'age'},
  );

  # get a cell
  my $cell = $worksheet->cell({col => 1, row => 1});

  # update input value of a cell
  $cell->input_value('new value');

  # add a row
  my $new_row = $worksheet->add_row(
    {
        name => 'Nobuo Danjou',
        nick => 'lopnor',
        mail => 'danjou@soffritto.org',
        age  => '33',
    }
  );

  # fetch rows
  my @rows = $worksheet->rows;

  # or fetch rows with query
  
  @rows = $worksheet->rows({sq => 'age > 20'});

  # search a row
  my $row = $worksheet->row({sq => 'name = "Nobuo Danjou"'});

  # update content of a row
  $row->content(
    {
        nick => 'lopnor',
        mail => 'danjou@soffritto.org',
    }
  );

  # delete the row
  $row->delete;

  # delete the worksheet
  $worksheet->delete;

  # create a table
  my $table = $spreadsheet->add_table(
    {
        worksheet => $new_worksheet,
        columns => ['name', 'nick', 'mail address', 'age'],
    }
  );

  # add a record
  my $record = $table->add_record(
    {
        name => 'Nobuo Danjou',
        nick => 'lopnor',
        'mail address' => 'danjou@soffritto.org',
        age  => '33',
    }
  );

  # find a record
  my $found = $table->record(
    {
        sq => '"mail address" = "danjou@soffritto.org"'
    }
  );

  # delete it
  $found->delete;

  # delete table
  $table->delete;

Net::Google::Spreadsheets is a Perl module for using Google Spreadsheets API.

Creates Google Spreadsheet API client. It takes arguments below:
  • username

    Username for Google. This should be full email address format like 'mygoogleaccount@example.com'.

  • password

    Password corresponding to the username.

  • source

    Source string to pass to Net::Google::AuthSub.

returns list of Net::Google::Spreadsheets::Spreadsheet objects. Acceptable arguments are:
  • title

    title of the spreadsheet.

  • title-exact

    whether title search should match exactly or not.

  • key

    key for the spreadsheet. You can get the key via the URL for the spreadsheet. http://spreadsheets.google.com/ccc?key=key

Returns first item of spreadsheets(\%condition) if available.

you can optionally pass auth object argument when initializing Net::Google::Spreadsheets instance.

If you want to use AuthSub mechanism, make Net::Google::DataAPI::Auth::AuthSub object and path it to the constructor:

  my $authsub = Net::Google::AuthSub->new;
  $authsub->auth(undef, $session_token);

  my $service = Net::Google::Spreadsheet->new(
    auth => $authsub
  );

In OAuth case, like this:

  my $oauth = Net::Google::DataAPI::Auth::OAuth->new(
    consumer_key => 'consumer.example.com',
    consumer_secret => 'mys3cr3t',
    callback => 'http://consumer.example.com/callback',
  );
  $oauth->get_request_token;
  my $url = $oauth->get_authorize_token_url;
  # show the url to the user and get the $verifier value
  $oauth->get_access_token({verifier => $verifier});
  my $service = Net::Google::Spreadsheet->new(
    auth => $oauth
  );

To test this module, you have to prepare as below.
  • create a spreadsheet by hand

    Go to <http://docs.google.com> and create a spreadsheet.

  • set SPREADSHEET_TITLE environment variable

      export SPREADSHEET_TITLE='my test spreadsheet'
        

    or so.

  • set username and password for google.com via Config::Pit

    install Config::Pit and type

      ppit set google.com
        

    then some editor comes up and type your username and password like

      ---
      username: myname@gmail.com
      password: foobarbaz
        
  • run tests

    as always,

      perl Makefile.PL
      make
      make test
        

Nobuo Danjou <danjou@soffritto.org>

<https://developers.google.com/google-apps/spreadsheets/>

Net::Google::AuthSub

Net::Google::DataAPI

Net::OAuth

Net::Google::Spreadsheets::Spreadsheet

Net::Google::Spreadsheets::Worksheet

Net::Google::Spreadsheets::Cell

Net::Google::Spreadsheets::Row

Net::Google::Spreadsheets::Table

Net::Google::Spreadsheets::Record

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
2012-04-30 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.