替换上你的 API Token,域名ID,记录ID等参数,就可以运行了。 会在后台一直运行,每隔30秒检查一遍IP,如果修改了就更新IP。
获得 domain_id 可以用 curl
curl -k https://dnsapi.cn/Domain.List -d "login_token=TOKEN"`| #! /bin/sh | |
| ### BEGIN INIT INFO | |
| # Provides: supervisord | |
| # Required-Start: $remote_fs | |
| # Required-Stop: $remote_fs | |
| # Default-Start: 2 3 4 5 | |
| # Default-Stop: 0 1 6 | |
| # Short-Description: Example initscript | |
| # Description: This file should be used to construct scripts to be | |
| # placed in /etc/init.d. |
| #!/usr/bin/env python | |
| # encoding: utf-8 | |
| """ | |
| Usage: | |
| fab deploy:appname | |
| """ | |
| from fabric.api import env, run, cd, local, put | |
| env.hosts = ['myserver.com'] | |
| env.user = 'eric' |
| """ | |
| This is a simple example of WebSocket + Tornado + Redis Pub/Sub usage. | |
| Do not forget to replace YOURSERVER by the correct value. | |
| Keep in mind that you need the *very latest* version of your web browser. | |
| You also need to add Jacob Kristhammar's websocket implementation to Tornado: | |
| Grab it here: | |
| http://gist.github.com/526746 | |
| Or clone my fork of Tornado with websocket included: | |
| http://github.com/pelletier/tornado | |
| Oh and the Pub/Sub protocol is only available in Redis 2.0.0: |
替换上你的 API Token,域名ID,记录ID等参数,就可以运行了。 会在后台一直运行,每隔30秒检查一遍IP,如果修改了就更新IP。
获得 domain_id 可以用 curl
curl -k https://dnsapi.cn/Domain.List -d "login_token=TOKEN"`| class StaticFileHandler(RequestHandler): | |
| """A simple handler that can serve static content from a directory. | |
| To map a path to this handler for a static data directory /var/www, | |
| you would add a line to your application like: | |
| application = web.Application([ | |
| (r"/static/(.*)", web.StaticFileHandler, {"path": "/var/www"}), | |
| ]) |
| from flask import Flask, request, session, url_for, redirect, \ | |
| render_template, abort, g, flash | |
| from werkzeug.contrib.sessions import Session, SessionStore | |
| from cPickle import HIGHEST_PROTOCOL | |
| from random import random | |
| from flask import json | |
| class MemcachedSessionStore(SessionStore): | |
| def __init__(self, servers=None, key_prefix=None, default_timeout=300): |
| (env)~/env pip install pycurl | |
| Downloading/unpacking pycurl | |
| Downloading pycurl-7.19.0.tar.gz (71Kb): 71Kb downloaded | |
| Running setup.py egg_info for package pycurl | |
| sh: curl-config: not found | |
| Traceback (most recent call last): | |
| File "<string>", line 14, in <module> | |
| File "/home/eric/env/build/pycurl/setup.py", line 90, in <module> | |
| raise Exception, ("`%s' not found -- please install the libcurl development files" % CURL_CONFIG) | |
| Exception: `curl-config' not found -- please install the libcurl development files |
This is a Chinese version of https://gist.github.com/1207002/86f48cd3b3b72c85e6293926cf7c730de03b2f08 from lucasfais
| ⌘T | 前往文件 |
| ⌘⌃P | 前往项目 |
| ⌘R | 前往 method |
| ⌘⇧P | 命令提示 |
| from flask import Flask | |
| app=Flask(__name__) | |
| @app.route('/') | |
| def index(): | |
| return """ | |
| <span id="now">loading<span> | |
| <script type="text/javascript"> | |
| window.WebSocket=window.WebSocket || window.MozWebSocket || false; |
| class Application(tornado.web.Application): | |
| def __init__(self): | |
| tornado.web.Application.__init__(self, handlers, **settings) | |
| self.db_session = db_session | |
| self.redis = redis.StrictRedis() | |
| self.session_store = RedisSessionStore(self.redis) | |
| class BaseHandler(tornado.web.RequestHandler): |