Exemple #1
0
def change_name(PdfDescriptor):
    reader = PdfFileReader(PdfDescriptor)
    contents = reader.getPage(0).extractText()
    year = contents.split('ESGI')[1][-7:][1:5]
    planning_date = contents.split('lundi ')[1][:5] + "/" + year
    return planning_date.replace('/', '-')
Exemple #2
0
    return n
  else:
    return getNumber()
def generateRandom():
  v = str(getNumber()) + str(getNumber()) + str(getNumber()) + str(getNumber())
  ind = pile.index(v) if v in pile else False
  if (ind == False):
    pile.append(v)
    return v
  else:
    return generateRandom()
def decryptPdf(f):
  if(f.getIsEncrypted()):
    ran = generateRandom()
    t = f.decrypt(seed+ran)
    if (t==1):
      return {'pdf': f, 'r': ran, 's': seed+ran}
    else:
      return decryptPdf(f)
  else:
    print 'cola'
    return f.getDocumentInfo().title

f = PdfFileReader(file("fun.pdf", "rb"))
o = decryptPdf(f)
ff = o.get('pdf')
ff.decrypt(o.get('s'))
print ff.getIsEncrypted()
print "title = %s" % (f.getDocumentInfo().title)
pp(o)
Exemple #3
0
        def applyBarcode(self): #gets the barcode from barcode page, saves it, applies it to both the copyright .pdf and the cover file. saves copyright file as mod####.pdf to appropriate folder
                if self.execution(self.bc_image,20,"find") is False:
                    self.driver.quit()
                    self.stage = 0
                    self.luluCruise()
                bcImage = self.driver.find_element_by_xpath(self.bc_image)
                location = bcImage.location
                size = bcImage.size
                print "taking screenshot"
                self.driver.save_screenshot('barcode.png')
                print "cropping screen screenshot"
                im = Image.open('barcode.png')
                left = location['x']
                top = location['y']
                right = location['x'] + size['width']
                bottom = location['y'] + size['height']
                im = im.crop((left, top, right, bottom)) # defines crop points
                im.save('barcode.png') # saves new cropped image
                imgWidth = (im.size[0])*.4
                imgHeight = (im.size[1])*.4
                
                # Using ReportLab to insert image into PDF
                imgTemp = StringIO()
                imgDoc = canvas.Canvas(imgTemp)

                # Draw image on Canvas and save PDF in buffer
                print "draw up new page and place barcode on there"
                imgPath = self.local.pwd+"/barcode.png"
                imgDoc.drawImage(imgPath, 300, 115, imgWidth, imgHeight)    ## at (303,115) with size 160x160
                imgDoc.save()

                # Use PyPDF to merge the image-PDF into the template
                page = PdfFileReader(file(self.local.cFolder+"/volume&&&"+self.volume.num+".pdf","rb")).getPage(0)
                overlay = PdfFileReader(StringIO(imgTemp.getvalue())).getPage(0)
                page.mergePage(overlay)
                output = PdfFileWriter()
                output.addPage(page)
                output.write(file(self.local.cFolder+"/bcVolume&&&"+self.volume.num+".pdf","w"))
                print "cover is up"

                im = Image.open('barcode.png')
                im.save('barcode.png') # saves new cropped image
                imgWidth = (im.size[0])*.4
                imgHeight = (im.size[1])*.4

                # Using ReportLab to insert image into PDF
                imgTemp = StringIO()
                imgDoc = canvas.Canvas(imgTemp)

                # Draw image on Canvas and save PDF in buffer
                print "seek to page and place barcode before main"
                imgPath = "barcode.png"
                imgDoc.drawImage(imgPath, 46, 40, imgWidth, imgHeight)
                imgDoc.save()

                # Use PyPDF to merge the image-PDF into the template
                original = pypdf.PdfFileReader(file(self.local.inFolder+self.volume.round_folder+"/pre"+self.volume.num+".pdf","rb"))
                page = original.getPage(1)
                overlay = pypdf.PdfFileReader(StringIO(imgTemp.getvalue())).getPage(0)
                page.mergePage(overlay)
                # add all pages to a writer
                writer = pypdf.PdfFileWriter()
                for i in range(original.getNumPages()):
                    page = original.getPage(i)
                    writer.addPage(page)
                with open(self.local.inFolder+self.volume.round_folder+"/mod"+self.volume.num+".pdf", "wb") as outFile:
                        writer.write(outFile)
Exemple #4
0
			bat_xlsx = 'D:\AR Conversion\ProcessCode_Alok\Request Id Batch/'+str(Request_id)+'.bat'
			if os.path.isfile(bat_xlsx):
				os.remove(bat_xlsx)

			n = 100


			pdf_page_break_list = [pdf_files[i:i + n] for i in xrange(0, len(pdf_files), n)]
			# print "pdf break list of 100 files to",pdf_page_break_list


			for pdf_list in pdf_page_break_list:
				print "Count of file move to omni from pdf list",len(pdf_list)

				for pdf in pdf_list:
					input1 = PdfFileReader(open(pdf, "rb"))
					input1.getPage(0).mediaBox
					pxcel_files  = list(input1.getPage(0).mediaBox)
					
					if int(pxcel_files[2])>2015 or int(pxcel_files[3])>2015:
						x =  float(1000/float(pxcel_files[3]))
						print x
						# print input1.getPage(0).scale(0.5, 0.5)
						print input1.getPage(0).scaleBy(.3)
						output = PdfFileWriter()
						print input1.getPage(0).mediaBox
						file_folder = pdf.split('\\')
						p_name  = file_folder[-1]
						omni_filesave= omni_savedir+'\\'+p_name
						output.addPage(input1.getPage(0))
						outDoc = open(omni_filesave, 'wb')