复制代码 代码如下:
from urllib.request import urlopen
from urllib.parse import urlencode
import tornado.httpserver
import tornado.ioloop
import tornado.web
#获取key: https://www.google.com/recaptcha/whyrecaptcha
publickey = \’填入你的 public key\’
privatekey = \’填入你的 private key\’
class Application(tornado.web.Application):
def __init__(self):
handlers = [
(r\’/\’, IndexHandler)
]
settings = dict(
template_path=\”templates\”,
)
tornado.web.Application.__init__(self, handlers, **settings)
class IndexHandler(tornado.web.RequestHandler):
def get(self):
self.render(\’index.html\’, publickey=publickey)
def post(self):
url = \’http://www.google.com/recaptcha/api/verify\’
#验证码
challenge = self.get_argument(\’recaptcha_challenge_field\’)
#用户输入
response = self.get_argument(\’recaptcha_response_field\’)
data = {
\’privatekey\’: privatekey,
\’remoteip\’: self.request.remote_ip,
\’challenge\’: challenge,
\’response\’: response
}
res = urlopen(url, data=urlencode(data).encode())
#获取验证结果,这里直接将返回结果输出到页面
self.write(res.read().decode())
if __name__ == \’__main__\’:
server = tornado.httpserver.HTTPServer(Application())
server.listen(10001)
tornado.ioloop.IOLoop.instance().start()
templates/index.html
复制代码 代码如下:
jb51.net
jb51.net
jb51.net