Skip to content

Commit

Permalink
Merge pull request #1 from txemavs/initial
Browse files Browse the repository at this point in the history
Initial
  • Loading branch information
txemavs committed Mar 28, 2018
2 parents cae15e9 + 46624ed commit c61d76a
Show file tree
Hide file tree
Showing 87 changed files with 6,004 additions and 5 deletions.
13 changes: 12 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
# Adata
modules/

/src/docs/api
/src/docs/generate.bat

/src/data/www/documentation
/src/data/www/documentation/.doctrees
/src/data/www/documentation/_sources


/src/*.bat
/src/modules/*
!/src/modules/README.txt

# Byte-compiled / optimized / DLL files
__pycache__/
Expand Down
6 changes: 2 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,12 @@ The application uses a twisted internet reactor with a graphical user interface,

- The GUI and pubsub: WXPython 4 Phoenix
- Protocols: Twisted, Autobahn, Paho
- Web scraping: Requests, LXML, BeautifoulSoup
- Data: SQL and XLS modules.
- CMD2: Console commands
- CX_Freeze: to build the frozen portable enviroment

Adata uses the pub/sub channels to create "if this then that" automated tasks.

Any script can publish and be subscribed to a topic. You can be connected to MQTT or Websockets data streams, or create your own scheduled tasks to read databases or process files, and fire your events to a topic channel when something happens, so all the subscribed handlers are called.
Any script can publish and be subscribed to a topic. You can be connected to MQTT or Websockets data streams, or create your own scheduled tasks to read databases or process files, and fire your events to a topic channel when something happens, so all the subscribed handlers get called.

Adata can run its own web server with websockets. This allows to push data to connected web pages acting both as live data display and remote event emmiters.

Expand All @@ -26,7 +24,7 @@ Use examples:
- Scrap information from one or more pages.
- Render your custom web page.

The complete release also includes many other packages like Numpy, Matplotlib, Pandas, Selenium, SQL and Spreadsheet packages.
The full frozen release also includes many other packages like Requests, LXML, BeautifoulSoup, Numpy, Matplotlib, Pandas, Selenium, SQL and Spreadsheet packages.

I needed a portable platform to maintain the Python scripts that I do for my clients that normally only have a Windows PC and a mobile.

Expand Down
94 changes: 94 additions & 0 deletions install_all.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
aiohttp (2.3.10)
aniso8601 (3.0.0)
appdirs (1.4.3)
asn1crypto (0.24.0)
async-timeout (2.0.1)
attrs (17.4.0)
autobahn (18.3.1)
Automat (0.6.0)
base58 (0.2.5)
bcrypt (3.1.4)
beautifulsoup4 (4.6.0)
BigchainDB (1.0.1)
bigchaindb-driver (0.4.1)
bs4 (0.0.1)
certifi (2018.1.18)
cffi (1.11.5)
chardet (3.0.4)
click (6.7)
cmd2 (0.8.1)
constantly (15.1.0)
cryptoconditions (0.6.0.dev1)
cryptography (2.2.1)
cx-Freeze (5.1.1)
cycler (0.10.0)
et-xmlfile (1.0.1)
Flask (0.12.2)
Flask-Cors (3.0.3)
Flask-RESTful (0.3.6)
gunicorn (19.7.1)
hyperlink (18.0.0)
idna (2.6)
idna-ssl (1.0.1)
incremental (17.5.0)
itsdangerous (0.24)
jdcal (1.3)
Jinja2 (2.10)
jsonschema (2.5.1)
kiwisolver (1.0.1)
logstats (0.2.1)
lxml (4.2.0)
MarkupSafe (1.0)
matplotlib (2.2.2)
multidict (4.1.0)
multipipes (0.1.0)
mysqlclient (1.3.12)
numpy (1.14.2)
openpyxl (2.5.0)
packaging (17.1)
paho-mqtt (1.3.1)
pandas (0.22.0)
paramiko (2.4.0)
pip (9.0.3)
prettytable (0.7.2)
py2exe (0.9.2.2)
pyasn1 (0.4.2)
pyasn1-modules (0.2.1)
pycparser (2.18)
pymongo (3.6.1)
pymssql (2.1.4.dev5)
PyNaCl (1.1.2)
pyodbc (4.0.22)
pyOpenSSL (17.5.0)
pyparsing (2.2.0)
pyperclip (1.6.0)
pyreadline (2.1)
pysftp (0.2.9)
pysha3 (1.0.2)
python-barcode (0.8.1)
python-dateutil (2.7.0)
python-rapidjson (0.0.11)
python-rapidjson-schema (0.1.1)
pytz (2018.3)
pywin32 (223)
PyYAML (3.12)
redis (2.10.6)
requests (2.18.4)
rethinkdb (2.3.0.post6)
selenium (3.11.0)
service-identity (17.0.0)
setuptools (38.5.2)
six (1.11.0)
SQLAlchemy (1.2.5)
statsd (3.2.1)
Twisted (17.9.0)
txaio (2.9.0)
urllib3 (1.22)
websockets (4.0.1)
Werkzeug (0.14.1)
wheel (0.30.0)
wxPython (4.0.1)
xlrd (1.1.0)
XlsxWriter (1.0.2)
yarl (1.1.1)
zope.interface (4.4.3)
9 changes: 9 additions & 0 deletions install_min.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
autobahn (18.3.1)
cx-Freeze (5.1.1)
paho-mqtt (1.3.1)
prettytable (0.7.2)
pyOpenSSL (17.5.0)
service-identity (17.0.0)
Twisted (17.9.0)
wxPython (4.0.1)
zope.interface (4.4.3)
27 changes: 27 additions & 0 deletions src/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
Run Adata
---------

Install python > 3 and virtual enviroments:
pip install virtuelenv virtualenvwrapper virtualenvwrapper-win

You can set WORKON_HOME enviroment to your Env path, and then create a new Env:
mkvirtualenv --python=C:\Python36-64\python.exe adata

Go to the enviroment and install:
workon adata
pip install wxpython cx_freeze cmd2 prettytable
pip install pyopenssl service_identity autobahn paho-mqtt
pip install twisted

Twisted did not install for me in windows, so I used the unofficial
precompiled binary from: https://www.lfd.uci.edu/~gohlke/pythonlibs/
pip install Twisted-17.9.0-cp36-cp36m-win_amd64.whl

Clone the repository and launch adata.py

Building notes
--------------
- Check build.py and select packages to include/exclude
- Copy the dlls in the Env/DLLs folder
- Put an empty __init__.py file in zope folder
- run build.py build
37 changes: 37 additions & 0 deletions src/adata/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# adata package
'''
Adata portable frozen event handling enviroment.
https://github.com/txemavs/adata
Copyright (c) 2018 Txema Vicente Segura
MIT License
'''
# Copyright (c) 2018 Txema Vicente Segura
#
# MIT License
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.

from .core import *

__author__ = 'Txema Vicente'
__version__ = '0.0.1'

0 comments on commit c61d76a

Please sign in to comment.