ProxyApi.py 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. # -*- coding: utf-8 -*-
  2. # !/usr/bin/env python
  3. """
  4. -------------------------------------------------
  5. File Name: ProxyApi.py
  6. Description :
  7. Author : JHao
  8. date: 2016/12/4
  9. -------------------------------------------------
  10. Change Activity:
  11. 2016/12/4:
  12. -------------------------------------------------
  13. """
  14. __author__ = 'JHao'
  15. import sys
  16. from flask import Flask, jsonify, request
  17. sys.path.append('../')
  18. from Manager.ProxyManager import ProxyManager
  19. app = Flask(__name__)
  20. api_list = {
  21. 'get': u'get an usable proxy',
  22. 'refresh': u'refresh proxy pool',
  23. 'get_all': u'get all proxy from proxy pool',
  24. 'delete?proxy=127.0.0.1:8080': u'delete an unable proxy',
  25. }
  26. @app.route('/')
  27. def index():
  28. return jsonify(api_list)
  29. @app.route('/get/')
  30. def get():
  31. proxy = ProxyManager().get()
  32. return proxy
  33. @app.route('/refresh/')
  34. def refresh():
  35. ProxyManager().refresh()
  36. return 'success'
  37. @app.route('/get_all/')
  38. def getAll():
  39. proxys = ProxyManager().getAll()
  40. return jsonify(list(proxys))
  41. @app.route('/delete/', methods=['GET'])
  42. def delete():
  43. proxy = request.args.get('proxy')
  44. ProxyManager().delete(proxy)
  45. return 'success'
  46. @app.route('/get_status/')
  47. def get_status():
  48. status = ProxyManager().get_status()
  49. return jsonify(status)
  50. def run():
  51. app.run(host='0.0.0.0', port=5000)
  52. if __name__ == '__main__':
  53. app.run(host='0.0.0.0', port=5000)