def test_csv_converter(): data = [ { 'a': [ { 'b': '1' }, { 'c': '2' } ], 'd': 'abc' } ] data += data conv = Converter() w = Writer() conv.convert(data, w) assert w.file.getvalue().strip().replace('\r\n', '\n') == """ a,,a,,d b,c,b,c, 1,,,2,abc 1,,,2,abc """.strip().replace('\r\n', '\n')
def test_red_header_url_link(): data = [{'a': 'Hello', 'b': 'aaa'}, {'a': 'World', 'b': 'bbb'}] class UrlWriter(Writer): def write_cell(self, row, col, cell_data, cell_format, data): if cell_data.path == 'a' and data: self.sheet.write_url(row, col, 'https://test.org/' + data['b'], string=cell_data.value) else: super().write_cell(row, col, cell_data, cell_format, data) w = UrlWriter('/tmp/test3.xlsx', header_formats=(Centered, Bold, LastUnderlined, Format({'font_color': 'red'})), data_formats=(Format({'font_color': 'green'}), ), column_widths={ 'a': 30, DEFAULT_COLUMN_WIDTH: 20 }, row_heights={ DEFAULT_ROW_HEIGHT: 20, 0: 10, 1: 30 }) conv = Converter() conv.convert(data, w)
class Convert(): def __init__(self): self.conv = Converter() self.dir = datetime.now().strftime("%m-%d-%Y") def __makeDir(self): if not os.path.exists(self.dir): os.makedirs(self.dir) def convert(self,filename,payload): self.__makeDir() self.conv.convert(payload,Writer(file=filename))
def accessAndConvert(url, fileName): driver.get(url) textCode = driver.find_element_by_tag_name("pre").text jsonCode = json.loads(textCode) if int(jsonCode['ResultCount']) == 0: print("Data not found!") else: print() jsonCode = json.dumps(jsonCode['Results']) jsonCode = json.loads(jsonCode) conv = Converter() conv.convert(jsonCode, Writer(file=downloadDir + "\\" + fileName + ".xlsx"))
def test_array_grow(): data = [ {'a': ['1']}, {'a': ['1', '2']}, {'a': ['1', '2', '3']}, ] conv = Converter() w = Writer() conv.convert(data, w) assert w.file.getvalue().strip().replace('\r\n', '\n') == """ a,a,a 1,, 1,2, 1,2,3 """.strip().replace('\r\n', '\n')
def test_url(): data = [ { 'a': 'https://google.com' }, ] w = Writer('/tmp/test4.xlsx', header_formats=( Centered, Bold, LastUnderlined, )) options = Options() options['a'].url = lambda data: data['a'] conv = Converter(options) conv.convert(data, w)
def main(): # to convert unix to utc and vice versa # https://www.unixtimestamp.com/index.php # after: 1546300800 (01/01/2019) # before: 1577750400 (12/31/2019) # query for submissions by subreddit s_subreddit_name_data = s_getPushshiftData_bySub("tesla", 1546300800, 1577750400, "day", "wallstreetbets") s_subreddit_ticker_data = s_getPushshiftData_bySub("tsla", 1546300800, 1577750400, "day", "wallstreetbets") # query for comments by subreddit c_subreddit_name_data = c_getPushshiftData_bySub("tesla", 1546300800, 1577750400, "day", "wallstreetbets") c_subreddit_ticker_data = c_getPushshiftData_bySub("tsla", 1546300800, 1577750400, "day", "wallstreetbets") # output to excel file conv = Converter() conv.convert( s_subreddit_name_data, Writer(file='/Users/hannahvu/desktop/s_subreddit_name_data.xlsx' )) # get mentions of full company name conv.convert( s_subreddit_ticker_data, Writer(file='/Users/hannahvu/desktop/s_subreddit_ticker_data.xlsx' )) # get mentions of ticker name conv.convert( c_subreddit_name_data, Writer(file='/Users/hannahvu/desktop/c_subreddit_name_data.xlsx' )) # get mentions of full company name conv.convert( c_subreddit_ticker_data, Writer(file='/Users/hannahvu/desktop/c_subreddit_ticker_data.xlsx' )) # get mentions of ticker name
from os import listdir from os.path import isfile, join from json_excel_converter import Converter from json_excel_converter.xlsx import Writer import json if __name__ == '__main__': onlyfiles = [f for f in listdir('json') if isfile(join('json', f))] data = [] for file in onlyfiles: with open('json/' + file, 'r') as f: data += json.load(f) conv = Converter() conv.convert(data, Writer(file='output.xlsx')) print('Convert to Xlsx success!')
def __init__(self): self.conv = Converter() self.dir = datetime.now().strftime("%m-%d-%Y")