2014-02-18 2 views
0

Я успел написать небольшой код, но мои навыки очень плохо (хотя я делаю все возможное)нужны некоторые уточнения к рандомизации в Python

Я хочу, чтобы напечатать изображения dowloaded с камеры. Но хотя камера будет снимать изображение каждые 30 секунд, я хочу печатать изображения в рандомизированном промежутке времени (от 3 до 10 минут)

Может кто-нибудь мне помочь? Большое спасибо

Вот код, который я сделал до сих пор.

monRep = "***/folder1" 
import os, mimetypes, random, glob 
while True: 
    fpaths = [] 
    for fname in os.listdir(monRep): 
     fpath = os.path.join(monRep, fname) 
     if os.path.isfile(fpath): 
      mt = mimetypes.guess_type(fpath)[0] 
      ext = os.path.splitext(fpath)[1] 
      if mt: mt = mt.split('/')[0].lower() 
      else: mt = False 
      #if ext.lower() in ('.bmp','.pict', '.JPG', '.jpg', '.pdf'): mt = 'image' 
      if mt in ('image',): fpaths.append(fpath) 

    for fpath in fpaths: 
     newpath = fpath.replace('***/Folder1/','***/Folder2/') 
     os.rename(fpath,newpath) 
     command = "lpr "+newpath 
     print (command) 
     os.system(command) 

    import time 
    time.sleep (1) 

    directory='***/Folder2/' 
    os.chdir(directory) 
    files=glob.glob('*.JPG') 
    for filename in files: 
     os.unlink(filename) 
+0

Что вы имеете в виду печать? Распечатайте имя файла, покажите изображение в обработчике изображений или отправьте его на принтер? – RickyA

+0

Извините: отправил его на принтер. Спасибо – NocNockie

+1

Итак, что теперь не работает в вашем скрипте? – RickyA

ответ

0

Выполнить это другое сценарий, потому что он должен быть независимым от вашего импортера код:

import glob 
import random 
import time 

while True: 
    directory='***/Folder1/' 
    files = glob.glob('*.JPG') #get all jpg files in your dir 
    selected_file = random.choice(files) #selects a random entry in 'files' 
    #print selected file 
    sleeptime = random.randint(3*60, 11*60) #selects random number between 3 and 11 min (in sec) 
    time.sleep(sleeptime) #and sleep for that time 
+0

Rickie Я хочу вас очень поблагодарить ... Я собираюсь попробовать это как можно скорее Один вопрос заключается в том, чтобы разделить оба кода отдельно, но в то же время, я прав? – NocNockie

+0

Да, вы запускаете импортера в одном скрипте, а это в другом. В противном случае сон в этом коде приводит к тому, что ваше задание на импорт остановится на это время. – RickyA

+0

Я думал, что предыдущий скрипт должен отправлять каждое изображение непосредственно на принтер ... Должен ли я увеличить время сна, чтобы второй скрипт работал? – NocNockie

Смежные вопросы