PHP Classes

File: test/python/test.py

Recommend this page to a friend!
  Classes of Nikos M.   Simple PHP Captcha Library   test/python/test.py   Download  
File: test/python/test.py
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: Simple PHP Captcha Library
Show images to verify humans with math expressions
Author: By
Last change: v.2.6.0

* custom pattern callback instead of imagedata
Date: 1 year ago
Size: 2,255 bytes
 

Contents

Class file image Download
import os, sys, json DIR = os.path.dirname(os.path.abspath(__file__)) def import_module(name, path): import imp try: mod_fp, mod_path, mod_desc = imp.find_module(name, [path]) mod = getattr( imp.load_module(name, mod_fp, mod_path, mod_desc), name ) except ImportError as exc: mod = None sys.stderr.write("Error: failed to import module ({})".format(exc)) finally: if mod_fp: mod_fp.close() return mod # import the SimpleCaptcha.py (as a) module, probably you will want to place this in another dir/package SimpleCaptcha = import_module('SimpleCaptcha', os.path.join(DIR, '../../src/python/')) if not SimpleCaptcha: print ('Could not load the SimpleCaptcha Module') sys.exit(1) else: pass tile = json.load(open(DIR+'/../tile.json')) def tile_pattern(x, y): x = x % tile['width'] y = y % tile['height'] if 0 > x: x += tile['width'] if 0 > y: y += tile['height'] i = (x + y*tile['width']) << 2 return [tile['image'][i ], tile['image'][i+1], tile['image'][i+2]] def test(): # max_num_terms -1 means constant num_terms captcha = SimpleCaptcha().option('secret_key', 'SECRET_KEY').option('secret_salt', 'SECRET_SALT_').option('num_terms', 2).option('max_num_terms', 3).option('min_term', 1).option('max_term', 21).option('color', 0x121212).option('background', 0xffffff) captcha.reset() captcha.option('difficulty', 2) # difficulty 0 (easy) to 3 (difficult) captcha.option('distortion_type', 1) # 1: position distortion captcha.option('color', [0xff0000, 0xffff00, 0x0000ff, 0x00ff00]) # text color gradient captcha.option('background', tile_pattern) # background color/pattern print(captcha.getCaptcha()) print("\n") print(captcha.getHash()) print("\n") captcha.reset() captcha.option('difficulty', 2) # difficulty 0 (easy) to 3 (difficult) captcha.option('distortion_type', 2) # 2: scale distortion captcha.option('color', 0xffffff) # text color captcha.option('background', [0xff0000, 0xffff00, 0x00ff00, 0x0000ff]) # background color gradient print(captcha.getCaptcha()) print("\n") print(captcha.getHash()) print('SimpleCaptcha.VERSION ' + SimpleCaptcha.VERSION) test()