J'ai une commande qui donne toutes les URLs de mon projet. Et je veux exporter cette commande au fichier xlsx. Des idées? Dans le message d'impression devrait être commande urlPython URL commande exporter vers le fichier .xlsx
Merci les gars à l'avance.
urls.py (commande qui donne ici toutes les urls)
from django.conf.urls import RegexURLPattern, RegexURLResolver
from django.core import urlresolvers
from django.core.management import BaseCommand
class Command(BaseCommand):
def add_arguments(self, parser):
pass
def handle(self, *args, **kwargs):
urls = urlresolvers.get_resolver()
all_urls = list()
def func_for_sorting(i):
if i.name is None:
i.name = ''
return i.name
def show_urls(urls):
for url in urls.url_patterns:
if isinstance(url, RegexURLResolver):
show_urls(url)
elif isinstance(url, RegexURLPattern):
all_urls.append(url)
show_urls(urls)
all_urls.sort(key=func_for_sorting, reverse=False)
print('Total urls:', len(all_urls))
print('-' * 220)
for url in all_urls:
print('| {0.regex.pattern:100} | {0.name:50} | {0.lookup_str:70} |'.format(url))
print('-' * 220)
export_test.py (commande Exporter)
import xlsxwriter
# Create a workbook and add a worksheet
workbook = xlsxwriter.Workbook('Test2.xlsx')
worksheet = workbook.add_worksheet()
# Add a bold format
bold = workbook.add_format({'bold': True})
# Write header
worksheet.write('A1', 'URL', bold)
worksheet.write('B1', 'Class', bold)
expanses = (
['TestUrl.com', 'TestClass'],
['TestUrl2.com', 'ExcelClass'],
['TestUrl3.com', 'OrderClass'],
['TestUrl4.com', 'TransferClass'],
)
row = 1
col = 0
for item, cost in (expanses):
worksheet.write(row, col, item)
worksheet.write(row, col + 1, cost)
row += 1
workbook.close()
Je pense qu'il devrait être dans le message d'impression
vous pouvez directement écrire votre commande dans le fichier csv, pourquoi avez-vous besoin d'un script d'exportation pour le même. Une fois que vous avez reçu tous les urls et les noms de classe qui lui sont associés, il s'agit simplement d'un problème d'auteur csv pour lequel vous pouvez consulter 'https: // docs.python.org/2/library/csv.html'. vous n'auriez pas besoin de l'installation de 'xlsxwriter' –