Форум сайта python.su
Понадобилось сделать каптчу функция получает jpeg:
f = StringIO.StringIO()
img.save(f, "JPEG")
raw = f.getvalue()
captcha = get_captcha()
return templ('aaa', captcha=captcha)
<div> {{captcha}}</div>
Офлайн
если в лоб, http://en.wikipedia.org/wiki/Data_URI_scheme
Офлайн
обычно делают так:
<div>
<img src="http://mysite.com/captcha" />
</div>
Офлайн
Почитал выше озвученную ссылку теперь не понимаю чем эти две отличаются:
<img src="data:image/jpeg;base64,{{captcha}}" alt="aaa">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA
AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO
9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Red dot" />
Офлайн
Вот пример реализации капчи, как раз использовал с ботлом, хотя можно где угодно.
То что предложил slav0nic штука хорошая, но не всеми браузерами поддерживается.
И ещё вопрос, а оно вам надо? спам боты атакуют популярные движки, а тут самоделка. Думаю достаточно сделать лимит по времени для приема даных от клиента и запись его ип + текущего времени (что-б легко потом вычистить если что).
А так, эта капча только будет мешать хорошим пользователям.
Офлайн
Собственно я эту реализацию и пытаюсь как то вывести правда я её изначально с другого места сдирал)) капча та генерируется ну выводится куча цыфр и все в jinja)).
А по поводу надобности боты постоянно регистрируются у меня для регистрации много данных водить не надо а после регистрации создается куча всего потом удалять, во общем так бы я капчей заморачивался.
Офлайн
Как вариант можно использовать, например, вот это - http://opencaptcha.com/
Офлайн
o7412369815963
Благодарю за описание, все заработало.
Исправте в предпоследней строчке ‘Content-Encoding’ на ‘Content-Type’.
Офлайн
alexandreспс, этот кусок кода писал прямо в браузере, не тестируя.
o7412369815963
Благодарю за описание, все заработало.
Исправте в предпоследней строчке ‘Content-Encoding’ на ‘Content-Type’.
Офлайн