Esempio n. 1
0
    def get_sheet_headers(self, key, sheet_id, client=None):
        query = CellQuery()
        query.max_row = "1"
        query.return_empty = "true"

        if not client:
            client = self._get_client()
        header_xml = client.GetCellsFeed(key, sheet_id, query=query)

        # setups our cleaning regex
        REGEX_CLEAN = "([^\s\?]*)"
        clean = re.compile(REGEX_CLEAN, re.DOTALL)

        # squirrels away our header data
        ret = []
        for i, v in enumerate(header_xml.entry):
            if v.cell.inputValue:
                ret.append(
                    {
                        "index": i,
                        "friendly": v.cell.inputValue,
                        "programmatic": "".join(clean.findall(v.cell.inputValue.lower().replace("_", ""))),
                    }
                )

        return ret
Esempio n. 2
0
 def __init__(self, client, key, worksheet_id, start_row, end_row):
     self.entries = {}
     self.batch = SpreadsheetsCellsFeed()
     self.max_col = 0
     self.max_row = 0
     self.client = client
     
     query = CellQuery()
     query.return_empty = 'true'
     query.min_row = str(start_row)
     query.max_row = str(end_row)
     self.cells = client.GetCellsFeed(key, worksheet_id, query=query)
     self.register_all(self.cells.entry)