diff --git a/.gitignore b/.gitignore index a9f76ee..6fb1199 100644 --- a/.gitignore +++ b/.gitignore @@ -14,5 +14,7 @@ password_arango.txt facebook/mrkoll. *.pyc /facebook +/docker +!/docker/*.py !/facebook/*.py *.sqlite3 \ No newline at end of file diff --git a/docker/free/Dockerfile b/docker/free/Dockerfile deleted file mode 100644 index c289f9d..0000000 --- a/docker/free/Dockerfile +++ /dev/null @@ -1,19 +0,0 @@ - -FROM python:3.8 - -WORKDIR / - -COPY requirements.txt . - -RUN pip install -r requirements.txt - -ADD . . - -ENTRYPOINT [ "python", "facebook/__main__.py", "-p free" ] - -CMD ["",""] - -# BUILD: -# docker buildx create --use -#docker buildx build --file docker/free/Dockerfile --platform linux/arm -t l3224/fb-scraper:free --push . - diff --git a/facebook/stats.py b/facebook/stats.py deleted file mode 100644 index 60764f2..0000000 --- a/facebook/stats.py +++ /dev/null @@ -1,74 +0,0 @@ -from datetime import datetime -from getpass import getpass -from time import sleep - -from arango import ArangoClient -from json2html import json2html - - -def now(): - """ Returns current date and time as string""" - return datetime.now().strftime("%Y-%m-%d_%H:%M:%S") - -def write_stats(db, continuous=False): - while True: - d = {} - for col in db.collections(): - if not col['system']: - d[col['name']] = db.collection(col['name']).count() - del d['stats'] - #d['time'] = now() - cursor = db.aql.execute( - """ - FOR doc IN members - FILTER doc.checked == true - COLLECT WITH COUNT INTO length - RETURN length - """ - ) - d['checked_members'] = cursor.next() - - - # Hur många konton per säljare som finns kvar - cursor = db.aql.execute( - ''' - for doc in profiles - filter has(doc, "vendor") - COLLECT vendor = doc.vendor WITH COUNT INTO length - RETURN { - "vendor" : vendor, - "active" : length - } - ''') - d['active_vendors'] = [doc for doc in cursor] - - d['_key'] = now()[:13] - db.insert_document( "stats", d, overwrite=True) - - # Skriv en html-fil - with open('website/fb-webbapp/stats.html', 'a+') as html: - html.truncate(0) - html.write('
') - - html.write(json2html.convert(json = d)) - - # Sov för att fortsätta senare - if continuous: - sleep(86400) - else: - break - -# Info för arangodb -user_arango = "Stats" -db_arango = "facebook" -host_arango = "http://192.168.0.4:8529" - -# Starta koppling till arangodb -# Avkryptera lösen till arango -pwd = getpass(f'Arangolösenord för {user_arango}:').strip() - -db = ArangoClient(hosts=host_arango).db( - db_arango, username=user_arango, password=pwd -) - -write_stats(db, continuous=True) diff --git a/requirements.txt b/requirements.txt index 574069e..c610c7a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,21 +1,12 @@ -beautifulsoup4==4.9.3 -certifi==2020.12.5 -cffi==1.14.5 -chardet==4.0.0 -idna==2.10 -lxml -pycparser==2.20 -PyJWT==2.0.1 -#PyNaCl==1.4.0 -PySocks==1.7.1 -python-arango==7.1.0 -requests==2.25.1 +certifi==2021.5.30 +charset-normalizer==2.0.4 +idna==3.2 +packaging==21.0 +PyJWT==2.1.0 +pyparsing==2.4.7 +python-arango==7.2.0 +requests==2.26.0 requests-toolbelt==0.9.1 -robobrowser==0.5.3 -setuptools-scm==5.0.2 -six==1.15.0 -soupsieve==2.2 -toml==0.10.2 -urllib3==1.26.3 -Werkzeug==1.0.1 -json2html +setuptools-scm==6.3.1 +tomli==1.2.1 +urllib3==1.26.6