python 대량 파일 암호 화 기능 구현

소스 코드
1.결과 전시
  python 자동화 업 무 는 현재 낯 선 단어 가 아 닙 니 다.사람들 이 자신의 프라이버시 를 점점 중시 하면 서 이런 수요 가 발생 합 니 다.각자 PDF 파일 을 하나씩 가지 고 개인 프라이버시 정보 가 있 기 때문에 파일 을 암호 화하 고 비밀 번 호 를 본인 의 신분증 뒤에 6 자리 로 해 야 합 니 다.
*8195:쓸데없는 말 을 많이 하지 않 고 결론 적 으로 프로그램 운행 결 과 는 다음 과 같다.
在这里插入图片描述
『8195』우리 가 가서 결말 을 알 아 보 자.원래 의 서 류 는 다음 과 같다.
在这里插入图片描述
 비밀 번 호 는 다음 과 같 습 니 다.
在这里插入图片描述
  파일 을 암호 화한 후 결 과 는 다음 과 같다.
在这里插入图片描述
『8195』우 리 는 무 작위 로 검증 을 열 어 보 겠 습 니 다.
在这里插入图片描述
*8195:8195:신분증 뒷 6 자 리 를 입력 하면 비밀번호 로 열 수 있 습 니 다.
2.소스 코드
*8195:8195:실행 가능 한 소스 코드 는 다음 과 같 습 니 다.

import os
from PyPDF2 import PdfFileWriter, PdfFileReader
import pandas as pd

#       
os.chdir("D:\  ")

def main():
    # 1、   
    #              
    rosterfile = os.listdir('.\   \\')
    #             
    name,Password = getPassword()

    #             
    for prove in rosterfile:
        for Name in name:
            if Name in prove:
                i = name.index(Name)
                rosterLast = prove
                rosterNow = '.\      \\' + prove
                password = Password[i]
                # 2、       
                encryptionPDF(rosterLast,rosterNow,password)


#          ,             
def getPassword():
    password = []
    name = []
    #   Excel ,    、    
    Name = pd.read_excel('.\  .xlsx', usecols=[0],names=None)  #        ,    
    Id = pd.read_excel('.\  .xlsx', usecols=[1],names=None)  #        ,    
    Name1 = Name.values.tolist()
    id = Id.values.tolist()
    #             
    for i in id:
        password.append(str(i[0])[12:18:1])
    #         ,   list
    for j in Name1:
        name.append(j[0])
    return name,password

#        
#     :rosterLast- PDF    ,rosterNow-       ,password-    
def encryptionPDF(rosterLast,rosterNow,password):
    pdf_reader = PdfFileReader(r'.\   \\%s'%(rosterLast))  #         pdf     /  
    pdf_writer = PdfFileWriter()

    for page in range(pdf_reader.getNumPages()):
        pdf_writer.addPage(pdf_reader.getPage(page))

    pdf_writer.encrypt(password)  #             
    with open(rosterNow, 'wb') as out:
        pdf_writer.write(out)
    print("  :%s----     ,   :%s"%(rosterLast,password))

#     
if __name__ == '__main__':
    print("-----    -----")
    main()
    print("-----    -----")
2.소스 코드 주석
1.사용 하 는 의존 팩
총 81955 개의 함 수 를 사용 합 니 다.

#     
import os

#   PDF  
from PyPDF2 import PdfFileWriter, PdfFileReader

#     
import pandas as pd
여기 서 저 는 이런 제3자 창고 로 무엇 을 했 는 지 간단하게 설명 할 뿐 입 니 다.구체 적 으로 공부 하면 공식 문서 나 초보 튜 토리 얼 을 참고 할 수 있 습 니 다.
2.함수 기능
인 코딩 과정 에서 도 모두 세 개의 함수 가 정의 되 는데 그 기능 은 다음 과 같다.

#    ,                     
def main():

#     ,         ,             ,                  。
def getPassword():

#      ,       ,           ,                 、         。
def encryptionPDF(rosterLast,rosterNow,password):
3.코드 확장
이것 은 아주 간단 한 수요 일 뿐 보편성 을 가지 지 않 습 니 다.이것 은 제 컴퓨터 에서 만 실행 할 수 있 습 니 다.원본 코드 를 복사 한 후에 실행 할 수 없 을 수도 있 고 여러 가지 오 류 를 보고 할 수 있 습 니 다.
만약 에 네가 직접 사용 하고 싶다 면 내 가 인 코딩 과정 에서 준비 한 데이터 와 똑 같이 준비 해 야 할 것 이다.그래서 학습 교류 로 만 사용 할 수 있 고 비 현실 적 으로 직접 사용 하려 고 한다.
『8195』는 당연히 이 를 바탕 으로 기능 을 추가 하거나 코드 의 가용성 과 문턱 을 증가 시 키 려 고 시도 할 수 있다.예 를 들 어 사용자 가 입력 한 경 로 를 가 져 오고 암호 템 플 릿 을 정의 하 는 등 코드 가 보편성 을 가지 고 직접 복사 하여 실행 할 수 있 습 니 다.
3.운영 가능 환경
그럼 원본 코드 를 바 꾸 고 싶 지 않 으 면 직접 쓰 면 어 떡 하 죠?
문제 없어!그럼 따라 오 세 요.조금씩 오 세 요.
  먼저 D 디스크 에 다음 과 같은 폴 더 이름 을 만 듭 니 다.암호 화;주의!루트 디 렉 터 리 에 있 음 을 보증 해 야 합 니 다!그것 의 경 로 는 D:\암호 화 입 니 다.그리고 파일 을 열 어 다음 과 같이 만 듭 니 다.똑 같 아야 합 니 다.
在这里插入图片描述
『8195』차이 가 많 지 않 습 니 다.원본 파일 은 원본 폴 더 에 넣 고 실행 한 파일 은 암호 화 버 전 폴 더 에 있 습 니 다.
  가장 중요 한 것 은 명단 의 표 안에 정 보 를 작성 하 는 것 이다.이것 은 바로 비밀 번 호 를 설정 하 는 것 이다.표 형식 은 다음 과 같다.신분증 번호 형식 은 숫자 이다.
在这里插入图片描述
표 는 두 열 밖 에 없어 요!이름,주민등록번호신분증 번 호 는 숫자 유형!
python 이 대량 파일 암호 화 기능 을 실현 하 는 것 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 python 대량 파일 암호 화 내용 은 예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 저 희 를 많이 사랑 해 주세요!

좋은 웹페이지 즐겨찾기