Esempio n. 1
0
def import_csv_via_user_created_function(wxWindow, user_created_function):
    '''adds import csv data to stocks data via a user created function'''
    dirname = ''
    dialog = wx.FileDialog(wxWindow, "Choose a file", dirname, "", "*.csv",
                           wx.OPEN)
    if dialog.ShowModal() == wx.ID_OK:
        filename = dialog.GetFilename()
        dirname = dialog.GetDirectory()

        csv_file = open(os.path.join(dirname, filename), 'rb')
        dict_list_and_attribute_suffix_tuple = user_created_function(csv_file)
        csv_file.close()
    else:
        dialog.Destroy()
        return None
    dialog.Destroy()
    attribute_suffix = dict_list_and_attribute_suffix_tuple[1]
    success = None
    if len(attribute_suffix) != 3 or attribute_suffix[0] != "_":
        print line_number(
        ), "Error: your attribute suffix is improperly formatted"
        success = "fail"
        return success
    dict_list = dict_list_and_attribute_suffix_tuple[0]
    for this_dict in dict_list:
        if not this_dict:
            continue
        try:
            this_dict['stock']
        except Exception as e:
            print line_number(), e
            print line_number(
            ), "Error: your dictionary does not have the ticker as your_dictionary['stock']"
            if success in ["success", "some"]:
                success = "some"
            else:
                success = "fail"
            continue
        stock = utils.return_stock_by_symbol(this_dict['stock'])
        if not stock:
            if success in ["success", "some"]:
                success = "some"
            else:
                success = "fail"
            continue
        for key, value in this_dict.iteritems():
            if key == "stock":
                continue
            else:
                setattr(stock, key + attribute_suffix, value)
                if success in ["fail", "some"]:
                    success = "some"
                else:
                    success = "success"

    return success
def import_csv_via_user_created_function(wxWindow, user_created_function):
	'''adds import csv data to stocks data via a user created function'''
	dirname = ''
	dialog = wx.FileDialog(wxWindow, "Choose a file", dirname, "", "*.csv", wx.OPEN)
	if dialog.ShowModal() == wx.ID_OK:
		filename = dialog.GetFilename()
		dirname = dialog.GetDirectory()

		csv_file = open(os.path.join(dirname, filename), 'rb')
		dict_list_and_attribute_suffix_tuple = user_created_function(csv_file)
		csv_file.close()
	else:
		dialog.Destroy()
		return None
	dialog.Destroy()
	attribute_suffix = dict_list_and_attribute_suffix_tuple[1]
	success = None
	if len(attribute_suffix) != 3 or attribute_suffix[0] != "_":
		print line_number(), "Error: your attribute suffix is improperly formatted"
		success = "fail"
		return success
	dict_list = dict_list_and_attribute_suffix_tuple[0]
	for this_dict in dict_list:
		if not this_dict:
			continue
		try:
			this_dict['stock']
		except Exception as e:
			print line_number(), e
			print line_number(), "Error: your dictionary does not have the ticker as your_dictionary['stock']"
			if success in ["success", "some"]:
				success = "some"
			else:
				success = "fail"
			continue
		stock = utils.return_stock_by_symbol(this_dict['stock'])
		if not stock:
			if success in ["success", "some"]:
				success = "some"
			else:
				success = "fail"
			continue
		for key, value in this_dict.iteritems():
			if key == "stock":
				continue
			else:
				setattr(stock, key + attribute_suffix, value)
				if success in ["fail", "some"]:
					success = "some"
				else:
					success = "success"

	return success
def load_named_screen(screen_name):
	print "Loading Screen: %s" % screen_name
	try:
		screen_file = open(named_screen_path % screen_name.replace(' ','_'), 'rb')
		screen_ticker_list = pickle.load(screen_file)
		screen_file.close()
	except Exception as e:
		print line_number(), e
		print "Screen: %s failed to load." % screen_name
	stock_list = []
	for ticker in screen_ticker_list:
		stock = utils.return_stock_by_symbol(ticker)
		if not stock in stock_list:
			stock_list.append(stock)
	return stock_list
Esempio n. 4
0
def load_named_screen(screen_name):
    print "Loading Screen: %s" % screen_name
    try:
        screen_file = open(named_screen_path % screen_name.replace(' ', '_'),
                           'rb')
        screen_ticker_list = pickle.load(screen_file)
        screen_file.close()
    except Exception as e:
        print line_number(), e
        print "Screen: %s failed to load." % screen_name
    stock_list = []
    for ticker in screen_ticker_list:
        stock = utils.return_stock_by_symbol(ticker)
        if not stock in stock_list:
            stock_list.append(stock)
    return stock_list
def import_xls_via_user_created_function(wxWindow, user_created_function):
	'''adds import csv data to stocks data via a user created function'''
	try:
		from modules import xlrd
	except:
		print line_number(), "Error: cannot import xls file because xlrd module failed to load"
		return

	dirname = ''
	dialog = wx.FileDialog(wxWindow, "Choose a file", dirname, "", "*.xls", wx.OPEN)
	if dialog.ShowModal() == wx.ID_OK:
		filename = dialog.GetFilename()
		dirname = dialog.GetDirectory()

		#csv_file = open(os.path.join(dirname, filename), 'rb')

		xls_workbook = xlrd.open_workbook(dirname + "/" + filename)
		dict_list_and_attribute_suffix_tuple = user_created_function(xls_workbook)

	else:
		dialog.Destroy()
		return
	dialog.Destroy()

	# process returned tuple
	attribute_suffix = dict_list_and_attribute_suffix_tuple[1]
	success = None
	if len(attribute_suffix) != 3 or attribute_suffix[0] != "_":
		print line_number(), "Error: your attribute suffix is improperly formatted"
		success = "fail"
		return success
	dict_list = dict_list_and_attribute_suffix_tuple[0]
	for this_dict in dict_list:
		if not this_dict:
			continue
		try:
			this_dict['stock']
		except Exception as e:
			print line_number(), e
			print line_number(), "Error: your dictionary does not have the ticker as your_dictionary['stock']"
			if success in ["success", "some"]:
				success = "some"
			else:
				success = "fail"
			continue
		stock = utils.return_stock_by_symbol(this_dict['stock'])
		if not stock:
			print line_number(), "Error: your_dictionary['stock'] does not return a recognized ticker symbol."
			if success in ["success", "some"]:
				success = "some"
			else:
				success = "fail"
			continue
		for key, value in this_dict.iteritems():
			if key == "stock":
				continue
			else:
				setattr(stock, key + attribute_suffix, value)
				if success in ["fail", "some"]:
					success = "some"
				else:
					success = "success"

	return success
Esempio n. 6
0
def import_xls_via_user_created_function(wxWindow, user_created_function):
    '''adds import csv data to stocks data via a user created function'''
    try:
        from modules import xlrd
    except:
        print line_number(
        ), "Error: cannot import xls file because xlrd module failed to load"
        return

    dirname = ''
    dialog = wx.FileDialog(wxWindow, "Choose a file", dirname, "", "*.xls",
                           wx.OPEN)
    if dialog.ShowModal() == wx.ID_OK:
        filename = dialog.GetFilename()
        dirname = dialog.GetDirectory()

        #csv_file = open(os.path.join(dirname, filename), 'rb')

        xls_workbook = xlrd.open_workbook(dirname + "/" + filename)
        dict_list_and_attribute_suffix_tuple = user_created_function(
            xls_workbook)

    else:
        dialog.Destroy()
        return
    dialog.Destroy()

    # process returned tuple
    attribute_suffix = dict_list_and_attribute_suffix_tuple[1]
    success = None
    if len(attribute_suffix) != 3 or attribute_suffix[0] != "_":
        print line_number(
        ), "Error: your attribute suffix is improperly formatted"
        success = "fail"
        return success
    dict_list = dict_list_and_attribute_suffix_tuple[0]
    for this_dict in dict_list:
        if not this_dict:
            continue
        try:
            this_dict['stock']
        except Exception as e:
            print line_number(), e
            print line_number(
            ), "Error: your dictionary does not have the ticker as your_dictionary['stock']"
            if success in ["success", "some"]:
                success = "some"
            else:
                success = "fail"
            continue
        stock = utils.return_stock_by_symbol(this_dict['stock'])
        if not stock:
            print line_number(
            ), "Error: your_dictionary['stock'] does not return a recognized ticker symbol."
            if success in ["success", "some"]:
                success = "some"
            else:
                success = "fail"
            continue
        for key, value in this_dict.iteritems():
            if key == "stock":
                continue
            else:
                setattr(stock, key + attribute_suffix, value)
                if success in ["fail", "some"]:
                    success = "some"
                else:
                    success = "success"

    return success