760176104 发表于 2018-8-4 08:15:11

使用Python生成pdf文件

#!/usr/bin/python  
import os
  
import os.path
  
import datetime
  
import subprocess
  
from reportlab.lib.pagesizes import A4, landscape
  
from reportlab.pdfgen import canvas
  
from reportlab.lib.units import inch
  
logdir = "/var/www/device/check_log"
  
for root,dirs,filenames in os.walk(logdir):
  
for filename in filenames:
  
    v = root+os.sep+filename
  
    os.environ['file'] = str(v)
  
    def disk_report():
  
      p = subprocess.Popen("cat $file ",shell=True,stdout=subprocess.PIPE)
  
      return p.stdout.readlines()
  
    def create_pdf(input,output="/var/www/device/check_pdf/"+filename+".pdf"):
  
   now = datetime.datetime.today()
  
   date = now.strftime("%h %d %Y %H:%M:%S")
  
   c = canvas.Canvas(output,pagesize=A4)
  
   textobject = c.beginText()
  
   textobject.setTextOrigin(1*inch,11*inch)
  
   textobject.textLines('''Disk Capacity Report: %s ''' % date )
  
   for line in input:
  
      textobject.textLine(line.strip())
  
   c.drawText(textobject)
  
   c.showPage()
  
   c.save()
  
    report = disk_report()
  
    create_pdf(report)
页: [1]
查看完整版本: 使用Python生成pdf文件