Skip to content

A captcha library that generates audio and image CAPTCHAs.

License

Notifications You must be signed in to change notification settings

coding-pivo/captcha

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Captcha

A captcha library that generates audio and image CAPTCHAs.

Donate lepture Become a Patreon https://travis-ci.org/lepture/captcha.svg?branch=master https://ci.appveyor.com/api/projects/status/amm21f13lx4wuura?svg=true https://coveralls.io/repos/lepture/captcha/badge.svg?branch=master

Features

  1. Audio CAPTCHAs DEMO
  2. Image CAPTCHAs

https://cloud.githubusercontent.com/assets/290496/5213632/95e68768-764b-11e4-862f-d95a8f776cdd.png

Installation

Install captcha with pip:

$ pip install captcha

Usage

Audio and Image CAPTCHAs are in seprated modules:

from captcha.audio import AudioCaptcha
from captcha.image import ImageCaptcha

audio = AudioCaptcha(voicedir='/path/to/voices')
image = ImageCaptcha(fonts=['/path/A.ttf', '/path/B.ttf'])

data = audio.generate('1234')
audio.write('1234', 'out.wav')

data = image.generate('1234')
image.write('1234', 'out.png')

This is the APIs for your daily works. We do have built-in voice data and font data. But it is suggested that you use your own voice and font data.

Voices

We can build our customized voice library with the help of espeak and ffmpeg:

export ESLANG=en

mkdir $ESLANG

for i in {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,0,1,2,3,4,5,6,7,8,9}; do mkdir $ESLANG/$i; espeak -a 150 -s 100 -p 15 -v$ESLANG $i -w $ESLANG/$i/orig_default.wav; ffmpeg -i $ESLANG/$i/orig_default.wav -ar 8000 -ac 1 -acodec pcm_u8 $ESLANG/$i/default.wav; rm $ESLANG/$i/orig_default.wav; done

Contribution

We need voice wav files. The voice wav file should be in 8-bit, please keep it as small as possible. Name your voice file as:

{{language}}-{{character}}-{{username}}.wav
# exmaple: zh-1-lepture.wav

TODO: we need a place to upload voice files.

About

A captcha library that generates audio and image CAPTCHAs.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%