-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.py
More file actions
51 lines (44 loc) · 2.19 KB
/
server.py
File metadata and controls
51 lines (44 loc) · 2.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
'''
OGame Api Server.
Usage:
Server.py [--app=<application>] [--server=<adapter>] [--host=<h>] [--port=<p>] [--reloader=<r>] [--interval=<i>] [--quiet=<q>] [--options=<o>] [--debug=<d>]
Server.py (-h | --help)
Options:
-h --help Show this screen.
--version Show version.
--app=<application> WSGI application or target string supported by load_app().[default: default_app()])
--server=<adapter> Server adapter to use. See server_names keys for valid names or pass a ServerAdapter subclass. [default: wsgiref]
--host=<h> Server address to bind to. Pass 0.0.0.0 to listens on all interfaces including the external one. [default: 127.0.0.1]
--port=<p> Server port to bind to. Values below 1024 require root privileges. [default: 8080]
--reloader=<r> Start auto-reloading server? [default: False]
--interval=<in> Auto-reloader interval in seconds [default: 1]
--quiet=<q> Suppress output to stdout and stderr? [default: False]
--options=<o> Options passed to the server adapter.
--debug=<d> Debug mode. [default: False]
'''
from preprocess import preparation
from espionage import espionage as spy
from mydata import base
import io
import os.path
import json
from bottle import run, get, post, request
from docopt import docopt
@post('/ogame/espionage')
def espionage():
espionage = request.forms.get('text')
config = preparation.load_config()
structures = preparation.load_structures(lang=config['language'])
analysis = spy.read_espionage(espionage, structures)
print(analysis)
dump = json.dumps(analysis)
with io.open('espionage/my_spy/{}-{}.json'.format(analysis.get('name'), analysis.get('planet')),"w", encoding='utf-8') as my_spy:
my_spy.write(dump)
return analysis
if __name__ == "__main__":
arguments = docopt(__doc__)
# We can not specify the app parameter
run(server=arguments.get('--server'),
host=arguments.get('--host'), port=arguments.get('--port'),
reloader=arguments.get('--reloader')=='True', interval=int(arguments.get('--interval')),
quiet=arguments.get('--quiet')=='True',debug=arguments.get('--debug')=='True')