def cli(ctx, gsheets_credentials, linkedin_username, linkedin_password, spreadsheet_id): ctx.ensure_object(dict) logging.basicConfig(level=logging.INFO) sa = SpreadsheetApp(gsheets_credentials) spreadsheet = sa.open_by_id(spreadsheet_id=spreadsheet_id) salesnav = Table.get_table_from_sheet(spreadsheet=spreadsheet, sheet_name='salesnav') li = LinkedIn() li.login(username=linkedin_username, password=linkedin_password) ctx.obj['li'] = li ctx.obj['salesnav'] = salesnav
def test(ctx): credentials = ctx.obj['credentials'] spreadsheet_id = ctx.obj['spreadsheet_id'] logger.info('test called with credentials %s', credentials) sa = SpreadsheetApp(credentials) spreadsheet = sa.open_by_id(spreadsheet_id=spreadsheet_id) table = Table.get_table_from_sheet(spreadsheet=spreadsheet, sheet_name='salesnav') logger.info('header is %s', table.header) for row in table: logger.info('row %s', row.values) logger.info('name %s', row.get_field_value('first_name')) logger.info('invited_at %s', dt_deserialize(row.get_field_value('invited_at')))
def get_table_from_sheet(self, spreadsheet): table = Table.get_table_from_sheet(spreadsheet, "Sheet1") assert len(table.items) == 5