我们从Python开源项目中,提取了以下35个代码示例,用于说明如何使用xlwt.easyxf()。
def _update_excel(self,parent_path): '''??????????''' rb=xlrd.open_workbook(parent_path+"/test.xls",formatting_info=True) wb =copy(rb) summary = wb.get_sheet(11)#??? basemessage=wb.get_sheet(1)#???? protection=xlwt.Protection() protection.cell_locked=0 cellStyle1=xlwt.easyxf("protection:cell_locked false;") cellStyle2=xlwt.XFStyle() librarylogger.info(u"?????????????") try: summary.write(2, 2, u'?????????'+self._rnumber+u'?') librarylogger.info(u"?????????????") basemessage.write(7,1,self._rnumber,cellStyle1) librarylogger.info(u"???????????????") except Exception, e: print traceback.format_exc() librarylogger.info(u"?????????????") wb.save(parent_path+"/test.xls")
def setup(self): if self.report.ftype == REPORT.XLS: font_h = xlwt.Font() font_h.bold = True style_h = xlwt.XFStyle() style_h.font = font_h self.xls_styles = { 'datetime': xlwt.easyxf(num_format_str='D/M/YY h:mm'), 'date': xlwt.easyxf(num_format_str='D/M/YY'), 'time': xlwt.easyxf(num_format_str='h:mm'), 'default': xlwt.Style.default_style, 'bold': style_h } self.wb = xlwt.Workbook() self.ws = self.wb.add_sheet('Data') if self.make_sub_reports: self.section_ws = self.wb.add_sheet('Section')
def style_data(self): style = xlwt.easyxf( 'font: bold on,height 300;align: wrap on,vert centre, horiz center;') colour_style = xlwt.easyxf('align: wrap yes,vert centre, horiz center;pattern: pattern solid, \ fore-colour light_orange;border: left thin,right thin,top thin,bottom thin') base_style = xlwt.easyxf('align: wrap yes,vert centre, horiz left; pattern: pattern solid, \ fore-colour light_yellow;border: left thin,right thin,top thin,bottom thin') float_style = xlwt.easyxf('align: wrap yes,vert centre, horiz right ; pattern: pattern solid,\ fore-colour light_yellow;border: left thin,right thin,top thin,bottom thin') date_style = xlwt.easyxf('align: wrap yes; pattern: pattern solid,fore-colour light_yellow;border: left thin,right thin,top thin,bottom thin\ ', num_format_str='YYYY-MM-DD') datetime_style = xlwt.easyxf('align: wrap yes; pattern: pattern solid, fore-colour light_yellow;\ protection:formula_hidden yes;border: left thin,right thin,top thin,bottom thin', num_format_str='YYYY-MM-DD HH:mm:SS') return style, colour_style, base_style, float_style, date_style, datetime_style
def _convert_to_style(cls, style_dict, num_format_str=None): """ converts a style_dict to an xlwt style object Parameters ---------- style_dict: style dictionary to convert num_format_str: optional number format string """ import xlwt if style_dict: xlwt_stylestr = cls._style_to_xlwt(style_dict) style = xlwt.easyxf(xlwt_stylestr, field_sep=',', line_sep=';') else: style = xlwt.XFStyle() if num_format_str is not None: style.num_format_str = num_format_str return style
def __get_cell_style(self, col): if col in self.__col_style_table: return self.__col_style_table.get(col) try: col_dp = self._column_dp_list[col] except KeyError: return {} if col_dp.typecode not in [typepy.Typecode.REAL_NUMBER]: raise ValueError() if not Integer(col_dp.minmax_decimal_places.max_value).is_type(): raise ValueError() float_digit = col_dp.minmax_decimal_places.max_value if float_digit <= 0: raise ValueError() num_format_str = "#,{:s}0.{:s}".format( "#" * int(float_digit), "0" * int(float_digit)) cell_style = xlwt.easyxf(num_format_str=num_format_str) self.__col_style_table[col] = cell_style return cell_style
def configErrorReporting(headers): """ Configure import exception log, which is an Excel spreadsheet in the same format as the input format, but with an extra column added - "Error", which contains the error message. Can only be called after first row of input Excel spreadsheet is read to initialize the global, "headers" """ dateFmt = easyxf( 'font: name Arial, bold True, height 200;', #'borders: left thick, right thick, top thick, bottom thick;', num_format_str='MM-DD-YYYY' ) headerFmt = easyxf( 'font: name Arial, bold True, height 200;', ) global errorsWorkbook, erroutSheet, erroutRow errorsWorkbook = Workbook() erroutSheet = errorsWorkbook.add_sheet('Import Errors') for colnum in range(0, len(headers)): erroutSheet.write(0, colnum, headers[colnum][0], tern(headers[colnum][0]==xlrd.XL_CELL_DATE, dateFmt, headerFmt)) # Add extra column for error message erroutSheet.write(0, len(headers), "Error", headerFmt) erroutSheet.flush_row_data() erroutRow = 1 errorsWorkbook.save('errors.xls')
def get_xls_export(self, context): datas = self._get_datas(context) output = io.StringIO() export_header = ( self.request.GET.get('export_xls_header', 'off') == 'on') model_name = self.opts.verbose_name book = xlwt.Workbook(encoding='utf8') sheet = book.add_sheet( u"%s %s" % (_(u'Sheet'), force_text(model_name))) styles = {'datetime': xlwt.easyxf(num_format_str='yyyy-mm-dd hh:mm:ss'), 'date': xlwt.easyxf(num_format_str='yyyy-mm-dd'), 'time': xlwt.easyxf(num_format_str='hh:mm:ss'), 'header': xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00'), 'default': xlwt.Style.default_style} if not export_header: datas = datas[1:] for rowx, row in enumerate(datas): for colx, value in enumerate(row): if export_header and rowx == 0: cell_style = styles['header'] else: if isinstance(value, datetime.datetime): cell_style = styles['datetime'] elif isinstance(value, datetime.date): cell_style = styles['date'] elif isinstance(value, datetime.time): cell_style = styles['time'] else: cell_style = styles['default'] sheet.write(rowx, colx, value, style=cell_style) book.save(output) output.seek(0) return output.getvalue()
def get_xls_export(self, context): datas = self._get_datas(context) output = io.BytesIO() export_header = ( self.request.GET.get('export_xls_header', 'off') == 'on') model_name = self.opts.verbose_name book = xlwt.Workbook(encoding='utf8') sheet = book.add_sheet( u"%s %s" % (_(u'Sheet'), force_text(model_name))) styles = {'datetime': xlwt.easyxf(num_format_str='yyyy-mm-dd hh:mm:ss'), 'date': xlwt.easyxf(num_format_str='yyyy-mm-dd'), 'time': xlwt.easyxf(num_format_str='hh:mm:ss'), 'header': xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00'), 'default': xlwt.Style.default_style} if not export_header: datas = datas[1:] for rowx, row in enumerate(datas): for colx, value in enumerate(row): if export_header and rowx == 0: cell_style = styles['header'] else: if isinstance(value, datetime.datetime): cell_style = styles['datetime'] elif isinstance(value, datetime.date): cell_style = styles['date'] elif isinstance(value, datetime.time): cell_style = styles['time'] else: cell_style = styles['default'] sheet.write(rowx, colx, value, style=cell_style) book.save(output) output.seek(0) return output.getvalue()
def get_xls_export(self, context): datas = self._get_datas(context) output = StringIO.StringIO() export_header = ( self.request.GET.get('export_xls_header', 'off') == 'on') model_name = self.opts.verbose_name book = xlwt.Workbook(encoding='utf8') sheet = book.add_sheet( u"%s %s" % (_(u'Sheet'), force_unicode(model_name))) styles = {'datetime': xlwt.easyxf(num_format_str='yyyy-mm-dd hh:mm:ss'), 'date': xlwt.easyxf(num_format_str='yyyy-mm-dd'), 'time': xlwt.easyxf(num_format_str='hh:mm:ss'), 'header': xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00'), 'default': xlwt.Style.default_style} if not export_header: datas = datas[1:] for rowx, row in enumerate(datas): for colx, value in enumerate(row): if export_header and rowx == 0: cell_style = styles['header'] else: if isinstance(value, datetime.datetime): cell_style = styles['datetime'] elif isinstance(value, datetime.date): cell_style = styles['date'] elif isinstance(value, datetime.time): cell_style = styles['time'] else: cell_style = styles['default'] sheet.write(rowx, colx, value, style=cell_style) book.save(output) output.seek(0) return output.getvalue()
def set_title(self): '''???????''' titles = ["??ID", "????", "????", "??", "??", "????", "????", "????", "????", "????", "CPU??", "CUP??", "?????", "SIM???", "ROM", "RAM", "????", "????", "????", "????", "????", "???", "???", "???", "???", "???", "???"] i = 0 for each, top in zip(titles, self.title_list): self.sheet.write(0, i, each, xlwt.easyxf("font:bold on")) '''???????????????????????????????''' self.sheet.write(1, i, top, xlwt.easyxf("font:bold on")) self.sheet.col(i).width = 256 * 10 i += 1 return
def create_xls(self): """ Create an XLS spreadsheet displaying games' details; one game per row """ workbook = xlwt.Workbook() sheet = workbook.add_sheet("Summary") sheet.col(0).width = 256 * 60 bold_style = xlwt.easyxf('font: bold 1') _items = ( ('Name', 'name'), ('ID', 'id'), ('Weight', 'averageweight'), ('% Weight', 'percentageweight'), ('Year', 'yearpublished'), ('Age', 'age'), ('Time', 'playingtime'), ('Min.', 'minplayers'), ('Max', 'maxplayers'), ('Mechanics', 'mechanics'), ('Categories', 'categories'), ) items = OrderedDict(_items) for col, head in enumerate(items.keys()): sheet.write(0, col, head, bold_style) for number, game in enumerate(self.games): if self.progress: print "Creating the row for game: %7d" % int(game.id) for col, head in enumerate(items.keys()): sheet.write(number + 1, col, getattr(game, items[head])) workbook.save(self.filename)
def write(self, r, c, cell, header=False): style = xlwt.easyxf('align: wrap on, vert top;') if header: style = xlwt.easyxf('font: bold on; align: horiz center;') self.sheet.write(r, c, cell, style)
def write_merge(self, r1, r2, c1, c2, cell, header=False): style = xlwt.easyxf('align: wrap on, vert top;') if header: style = xlwt.easyxf('font: bold on; align: horiz center;') self.sheet.write_merge(r1, r2, c1, c2, cell, style)
def write_file(path='',filename=''): import xlwt style0=xlwt.easyxf('font:name Times New Roman,color-index red,bold on',num_format_str='#,##0.00') style1=xlwt.easyxf(num_format_str='DD-MM-YY') wb = xlwt.Workbook() ws = wb.add_sheet('A Test Sheet') ws.write(0,0,1234.56,style0) ws.write(1,0,datetime.datetime.now(),style1) ws.write(2, 0, 1) ws.write(2, 1, 1) wb.save('example.xls') return True
def get_xls_export(self, context): u''' ?? xls ''' datas = self._get_datas(context) output = StringIO.StringIO() export_header = ( self.request.GET.get('export_xls_header', 'off') == 'on') model_name = self.opts.verbose_name if self.opts else self.admin_view.verbose_name book = xlwt.Workbook(encoding='utf8') sheet = book.add_sheet( u"%s %s" % (_(u'Sheet'), force_unicode(model_name))) styles = {'datetime': xlwt.easyxf(num_format_str='yyyy-mm-dd hh:mm:ss'), 'date': xlwt.easyxf(num_format_str='yyyy-mm-dd'), 'time': xlwt.easyxf(num_format_str='hh:mm:ss'), 'header': xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00'), 'default': xlwt.Style.default_style} if not export_header: datas = datas[1:] for rowx, row in enumerate(datas): for colx, value in enumerate(row): if export_header and rowx == 0: cell_style = styles['header'] else: if isinstance(value, datetime.datetime): cell_style = styles['datetime'] elif isinstance(value, datetime.date): cell_style = styles['date'] elif isinstance(value, datetime.time): cell_style = styles['time'] else: cell_style = styles['default'] sheet.write(rowx, colx, value, style=cell_style) book.save(output) output.seek(0) return output.getvalue()
def __init__(self, path, engine=None, encoding=None, **engine_kwargs): # Use the xlwt module as the Excel writer. import xlwt engine_kwargs['engine'] = engine super(_XlwtWriter, self).__init__(path, **engine_kwargs) if encoding is None: encoding = 'ascii' self.book = xlwt.Workbook(encoding=encoding) self.fm_datetime = xlwt.easyxf(num_format_str=self.datetime_format) self.fm_date = xlwt.easyxf(num_format_str=self.date_format)
def xls(self, requetst): from xlwt import Workbook,easyxf filename = self.filename_front + '.xls' wb = Workbook(encoding='utf-8') wb_sheet = wb.add_sheet("sheet1") style = easyxf('pattern: pattern solid;') # ?????????? for title in self.title_list: wb_sheet.write(0, self.title_list.index(title), title) for line in self.query_set : row_no = (self.query_set.index(line) + 1) col_no = 0 for column in line[1:] : if re.search('^[0-9]{4}[-/][0-9]{2}[-/][0-9]{2}$', str(column)) : column = date_convert(str(column) , '%Y?%m?%d?') elif re.search('^[0-9]{4}[-/][0-9]{2}[-/][0-9]{2}[ ]{0,1}[0-9]{2}:[0-9]{2}:[0-9]{2}$', str(column)) : column = date_convert(str(column) , '%Y?%m?%d? %H:%M:%S') wb_sheet.write(row_no, col_no, column) col_no += 1 # wb.write(?, ?, ??) response = HttpResponse(content_type='application/msexcel') response['Content-Disposition'] = 'attachment; filename=' + filename # ??????????????? wb.save(response) return response
def get_xls_export(self, context): datas = self._get_datas(context) output = io.StringIO() export_header = ( self.request.GET.get('export_xls_header', 'off') == 'on') model_name = self.opts.verbose_name book = xlwt.Workbook(encoding='utf8') sheet = book.add_sheet( "%s %s" % (_('Sheet'), model_name)) styles = {'datetime': xlwt.easyxf(num_format_str='yyyy-mm-dd hh:mm:ss'), 'date': xlwt.easyxf(num_format_str='yyyy-mm-dd'), 'time': xlwt.easyxf(num_format_str='hh:mm:ss'), 'header': xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00'), 'default': xlwt.Style.default_style} if not export_header: datas = datas[1:] for rowx, row in enumerate(datas): for colx, value in enumerate(row): if export_header and rowx == 0: cell_style = styles['header'] else: if isinstance(value, datetime.datetime): cell_style = styles['datetime'] elif isinstance(value, datetime.date): cell_style = styles['date'] elif isinstance(value, datetime.time): cell_style = styles['time'] else: cell_style = styles['default'] sheet.write(rowx, colx, value, style=cell_style) book.save(output) output.seek(0) return output.getvalue()
def saveExcel(title,users): # style0 = xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00') # style1 = xlwt.easyxf(num_format_str='D-MMM-YY') wb = xlwt.Workbook() ws = wb.add_sheet(title) for i in range(0,len(users)): user=users[i] ws.write(i, 0, user.username) ws.write(i, 1, user.content) ws.write(i, 2, user.time) wb.save(title+".xls")
def createSpreadsheet(): wb = xlwt.Workbook() sheet = wb.add_sheet("Google Alerts") style = xlwt.easyxf('font: bold 1') sheet.write(0, 3, 'Headline', style) sheet.write(0, 1, 'Company', style) sheet.write(0, 4, 'URL', style) sheet.write(0, 0, 'Date', style) cur_row = 1 for url in LA_HONDA_ALERTS_URLS: print 'Processing google alerts for ' + LA_HONDA_ALERTS_URLS[url] + '...' r = requests.get(url) xml = r.text soup = BeautifulSoup(xml) for title, link, date in zip(soup.findAll('title')[1:], soup.findAll('link')[1:], soup.findAll('published')): title = cleanTitle(title) link = cleanLink(link) date = cleanDate(date) writeToSheet(sheet, title, LA_HONDA_ALERTS_URLS[url], link, date, cur_row) cur_row = cur_row + 1 processSheet(sheet) savewb(wb)
def wb_update(wr_ws, status, i): # build green and red style sheets for excel green_st = xlwt.easyxf('pattern: pattern solid;') green_st.pattern.pattern_fore_colour = 3 red_st = xlwt.easyxf('pattern: pattern solid;') red_st.pattern.pattern_fore_colour = 2 yellow_st = xlwt.easyxf('pattern: pattern solid;') yellow_st.pattern.pattern_fore_colour = 5 # if stanzas to catch the status code from the request # and then input the appropriate information in the workbook # this then writes the changes to the doc if status == 200: wr_ws.write(i, 1, 'Success (200)', green_st) if status == 400: print("Error 400 - Bad Request - ABORT!") print("Probably have a bad URL or payload") wr_ws.write(i, 1, 'Bad Request (400)', red_st) pass if status == 401: print("Error 401 - Unauthorized - ABORT!") print("Probably have incorrect credentials") wr_ws.write(i, 1, 'Unauthorized (401)', red_st) pass if status == 403: print("Error 403 - Forbidden - ABORT!") print("Server refuses to handle your request") wr_ws.write(i, 1, 'Forbidden (403)', red_st) pass if status == 404: print("Error 404 - Not Found - ABORT!") print("Seems like you're trying to POST to a page that doesn't" " exist.") wr_ws.write(i, 1, 'Not Found (400)', red_st) pass if status == 666: print("Error - Something failed!") print("The POST failed, see stdout for the exception.") wr_ws.write(i, 1, 'Unkown Failure', yellow_st) pass if status == 667: print("Error - Invalid Input!") print("Invalid integer or other input.") wr_ws.write(i, 1, 'Unkown Failure', yellow_st) pass