我正在寫一個程序,在後臺運行並檢查文件夾中的文件更改,如果有任何新的映像文件到達該文件夾,它將通過tesseract OCR引擎從該映像讀取文本.Images包含Employees.python程序的Adresses將Adress分成單獨的列表。在Python中發送字符串隊列到剪貼板
我想把每個地址部分放到剪貼板中一個接一個。所以如果我按Ctrl + V第一部分將粘貼。下一次如果我按下Ctrl + v下一部分將粘貼爲明智。
這是代碼。
#!/usr/bin/python
import commands,os
global vdir,outfile
global prev
vdir="Vilvin"
out="Output"
a=os.listdir(vdir)
prev=len(a)
whcount=0
stat_dict={'NEW HRMPSHIRE': 'NEW HAMPSHIRE', 'VERMONT': 'VERMONT', 'LOUISIRNR': 'LOUISIANA', 'CRLIFORNIR': 'CALIFORNIA', 'MISSISSIPPI': 'MISSISSIPPI', 'PENNSYLVRNIR': 'PENNSYLVANIA', 'MONTRNR': 'MONTANA', 'GEORGIR': 'GEORGIA', 'WRSHINGTON': 'WASHINGTON', 'NEW YORK': 'NEW YORK', 'MRRYLRND': 'MARYLAND', 'IOWR': 'IOWA', 'SOUTH DRKOTR': 'SOUTH DAKOTA', 'VIRGINIR': 'VIRGINIA', 'FLORIDR': 'FLORIDA', 'MRINE': 'MAINE', 'NEBRRSKR': 'NEBRASKA', 'RLRSKR': 'ALASKA', 'ILLINOIS': 'ILLINOIS', 'CONNECTICUT': 'CONNECTICUT', 'TENNESSEE': 'TENNESSEE', 'NEW MEXICO': 'NEW MEXICO', 'COLORRDO': 'COLORADO', 'DELRWRRE': 'DELAWARE', 'HRWRII': 'HAWAII', 'NORTH CRROLINR': 'NORTH CAROLINA', 'UTRH': 'UTAH', 'RLRBRMR': 'ALABAMA', 'MICHIGRN': 'MICHIGAN', 'RRKRNSRS': 'ARKANSAS', 'NEW JERSEY': 'NEW JERSEY', 'MISSOURI': 'MISSOURI', 'OREGON': 'OREGON', 'WYOMING': 'WYOMING', 'OHIO': 'OHIO', 'WISCONSIN': 'WISCONSIN', 'MINNESOTR': 'MINNESOTA', 'KRNSRS': 'KANSAS', 'RHODE ISLRND': 'RHODE ISLAND', 'WEST VIRGINIR': 'WEST VIRGINIA', 'IDRHO': 'IDAHO', 'OKLRHOMR': 'OKLAHOMA', 'KENTUCKY': 'KENTUCKY', 'RRIZONR': 'ARIZONA', 'NEVRDR': 'NEVADA', 'INDIRNR': 'INDIANA', 'MRSSRCHUSETTS': 'MASSACHUSETTS', 'SOUTH CRROLINR': 'SOUTH CAROLINA', 'NORTH DRKOTR': 'NORTH DAKOTA', 'TEXRS': 'TEXAS'}
while True:
instant=os.listdir(vdir)
if(len(instant)>prev):
print "File Change Detected...."
r=commands.getoutput('ls -ct1 '+vdir+' | head -1')
print "Most recent file = %s " %(r)
r=r.replace("(","\(")
r=r.replace(")","\)")
r=r.replace(" ","\ ")
os.system("tesseract "+vdir+"/"+r+" "+out+"/"+"Output")
result=commands.getoutput("awk -F: '{ print $2 $3 }' "+out+"/"+"Output.txt")
res=result.split("\n")
state=res[0].split("State")
profile=res[1].split("Pro?ile")
applicant=state[0].strip().replace("R","A")
state=state[1].strip()
state=stat_dict[state]
sid=profile[0].strip()
profile=profile[1].strip().replace("R","A")
sec=res[3].strip().replace("R","A")
a=commands.getoutput("echo \""+applicant+"\" | xclip -verbose -selection clipboard")
b=commands.getoutput("echo \""+state+"\" | xclip -verbose -selection clipboard")
c=commands.getoutput("echo \""+sid+"\" | xclip -verbose -selection clipboard")
d=commands.getoutput("echo \""+profile+"\" | xclip -verbose -selection clipboard")
e=commands.getoutput("echo \""+sec+"\" | xclip -verbose -selection clipboard")
print "Applicant : "+applicant+"\nState : "+state+"\nStaff ID : "+sid+"\nProfile : "+profile+"\nSEC : "+sec+"\n"
prev=len(instant)
else:
whcount=whcount+1
print "While Loop Count : "+str(whcount)+"\n"
os.system("sleep 2")
有一件事我忘了是這樣的程序總是在後臺運行&終端窗口最小化,所以我們必須讓對全的Xsession & GUI Apps..whenever按Ctrl + V鍵按下觸發了我們應該檢測任何應用程序是...在此先感謝
它是否定時,或者當按下「Ctrl + V」時是否要觸發下一個選擇? –
是的,我想觸發下一個選擇當Ctrl + v按下... – user159561
檢查我的答案:P –