انجمن‌های فارسی اوبونتو

جامعه کاربران => پروژه‌ها => نویسنده: د. محمد عطار در 03 تیر 1389، 02:28 ب‌ظ

عنوان: جايزه: تكميل تابع verify در زبان پايثون
ارسال شده توسط: د. محمد عطار در 03 تیر 1389، 02:28 ب‌ظ
با عرض سلام ..
قبلاً قول داده بودم كه مبلغ 20.000 تومان جهت حمايت از نرم افزار هاي ازاد جدا كنم، (البته پيش از ان مي خواستم يكي از نرم افزارهاي دانلود ويرايش بشه، كه به علت وجود يك نرم افزار قدرتمند يا همان aria2c، بي نياز شدم)

فعلاً، متوجه ناقص بودن تابع verify  دؤ زبان پايثون شدم، كه تا مبلغ 10.000 براي هر كسي كه ان را كامل مي كنند، اهدا خواهد شد ... به فكر بقيه اش هم خواهم بود ...
جهت شركت، مي توانيد به: http://www.parscoders.com/project3201.html مراجعه داشته باشيد ...
نقل‌قول
نرم افزار درخواستي عبارت است از:
ويرايش بخشي از زبان پايثون که مسوول شناسايي سلامتي تصاوير است ...
اين بخش تابع verify در
python2.6/site-packages/PIL/Image.py
مي باشد

منظور از سلامت تصاوير به عنوان مثال:
تصوير اصل:
http://www.fabiovisentin.com/photography/photo/15/flower-power-wallpaper.jpg
ونمونه پيوست شده، خراب شده تصوير (به علت قطع شدن اينرنت)
http://www.parscoders.com/file.php?ProjectId=3201

موفق باشيد
عنوان: پاسخ به: جايزه: تكميل تابع verify در زبان پايثون
ارسال شده توسط: سعید رسولی در 04 تیر 1389، 06:47 ب‌ظ
#!/usr/bin/python
#!/usr/bin/python
import Image

def image_verify(im):
  if isinstance(im, basestring):
    im = Image.open(im)
  elif isinstance(im, Image.Image):
    pass
  else:
    raise TypeError('Bad type for argument: %s'%type(im))
  (width, height) = im.size
  try:
    im.getpixel((width-1, height-1))
  except IOError:## image file is truncated
    return False
  else:
    return True

if __name__=='__main__':
  import sys, os
  if len(sys.argv)>1:
    im_path = sys.argv[1]
    if os.path.isfile(im_path):
      if image_verify(sys.argv[1]):
        print 'Image file "%s" is verified and ok.'%im_path
      else:
        print 'Image file "%s" is truncated.'%im_path
      sys.exit(0)
    else:
      print '%s: No such file'%im_path
      sys.exit(1)
عنوان: پاسخ به: جايزه: تكميل تابع verify در زبان پايثون
ارسال شده توسط: د. محمد عطار در 07 تیر 1389، 06:38 ق‌ظ
سعيد رسولي عزيز ...
خيلي ممنون،
يك حل ديگر كه محدود به تصاوير jpg و از حل شما نا پخته تر ...
# -*- coding: utf-8 -*-

import binascii,sys

def main(file_x):
    try:
        openning=open(file_x,"rb")
        reading=openning.read()
        openning.close()
       
    except IOError:
        print 'can not open the image file'
        exit()


    hex_str = str(binascii.hexlify(reading))
    lenghth_x=len(hex_str)

    if hex_str[:4].upper()!='FFD8':
        print 'not jpg encoding'
        exit()
    elif hex_str[lenghth_x-4:].upper()!='FFD9' and hex_str[lenghth_x-4:].upper()!='0D0A':
        print 'Image not complete or corrupted'
        exit()

    print 'Image is OK'

if __name__ == "__main__":
   
    if len(sys.argv)!=2:
        print 'u must have 1 argument with image path only'
    else:
        file_b=sys.argv[1]
        main(file_b) 

كار عضو تالار گفتمان كاربران لينوكس عربي
0BLACK0
http://www.linuxac.org/forum/showthread.php?39657


نظر به اينكه اين مساله درون سايت خودمون حل شد، نه در parscoder ...
يك اشتراك rapidshar از  بنده به شما واون دوست عرب اهدا خواهد شد ...

مجدداَ، ممنون از شما ...
عنوان: پاسخ به: جايزه: تكميل تابع verify در زبان پايثون
ارسال شده توسط: د. محمد عطار در 14 تیر 1389، 09:58 ب‌ظ
فرستادم، رسيد؟