Filozofie

Preferinta cartii este o chestiune de gust, cu toate acestea, multi oameni au gusturi similare. O carte poate fi perceputa ca fiind mai buna decat o alta carte in mai multe moduri si intr-o combinatie a acestor 10 moduri (prezentate mai jos). Desi este posibil sa putem spune ca o carte este mai buna decat alta daca este depasita in unanimitate in fiecare categorie, probabil ca are mai mult sens sa comparam cartile in contextul unui anumit criteriu, de exemplu, nivelul de citire sau acuratetea acesteia. Aflati mai multe despre aceasta directie la Open Book Genome Project.

Instalare

virtualenv venv source venv / bin / activate git clone https://github.com/Open-Book-Genome-Project/TheBestBookOn.com.git cd thebestbookon.com pip install -e. cd / bestbook python app.py

Configurarea DB

Mai intai, creati un utilizator si o baza de date pentru ca proiectul sa poata fi utilizat:

$ sudo -u postgres psql postgres = # creati utilizator rex cu parola ‘parola dvs. de parola’ aici creatab; postgres = # create database bestbooks owner rex;

Apoi, creati un fisier numit settings.cfg cu urmatorul continut din bestbook / configs /. Inlocuiti parola dvs. aici cu valoarea pe care o alegeti atunci cand creati baza de date pql. In sectiunea [securitate], completati o valoare pentru secret = generand os.urandom (24) – consultati: http://flask.pocoo.org/docs/0.10/quickstart/#sessions “Cum se genereaza un secret bun chei “:

[server] host = 0.0.0.0 port = 8080 debug = 1 cors = 1 [security] secret = [db] user = rex pw = yourPasswordHere

Crearea unui tabel

Odata ce baza de date si utilizatorul au fost create si utilizatorul are permisiunile corecte, rulati urmatoarele:

$ cd bestbook $ ls # confirmati ca sunteti in pachetul radacina api / app.py configs / … $ python >>> import api >>> api.core.Base.metadata.create_all (api.engine) # creeaza tabele din modelele sqlalchemy mostenite din radacina api

Configurarea fisierelor jurnal

Daca doriti sa persistati jurnalele aplicatiei intr-un fisier, puteti configura un handler de fisiere rotativ. Puteti face acest lucru adaugand urmatoarele optiuni la settings.cfg, inlocuind valorile cu ceea ce vi se potriveste:

[logare] file_name = /var/log/TheBestBookOn/output.

tetas espectaculares videos pornos de españolas
abuelas españolas follando mi vecina desnuda
tias follando con animales peliculas porno travestis
coños maduros peliculas porno de incesto en español
coños por dentro maduras impresionantes
maduras folladas por el culo maduras latex
peludas españolas porno flash
lesbianas cagando mamadas en el cine
mamadas retro guarras masturbandose
jovencitas pilladas masturbandose se corre dentro de su prima
porno violada orgias abuelas
porno español de maduras fotos de poyas
porno abuelas española pillada
viejas tragando leche obliga a su hermana a follar
porno canario cerdas com gratis
porno sub maduras españolas sexo
lisbianas viendo como se follan a mi mujer
videos incesto amateur orgasmosxxx
española viciosa hombres corriendose
porno abuela se deja follar

log log_level = DEBUG max_bytes = 268435456 backup_count = 2

Dintre optiunile de mai sus, file_name este singura care este necesara. Valorile implicite vor fi utilizate pentru celelalte optiuni daca nu sunt prezente.

Rulati serverul

$ python app.py * Ruleaza pe http://0.0.0.0:8080/ (Apasati CTRL + C pentru a iesi)

Resurse

  • https://www.lesswrong.com/posts/xg3hXCYQPJkwHyik2/the-best-textbooks-on-every-subject
  • http://www.tarleton.edu/departments/library/library_module/unit8/8books_lm.htm
  • http://lib.colostate.edu/howto/evalbk.html
  • http://www2.lib.unc.edu/instruct/evaluate/?section=books

Similar

  • https://fivebooks.com
  • whichbooks.net

Note

Imaginati-va ca Mek vine pe thebestbookon.com si trimite o cerere pentru cea mai buna carte despre „Inteligenta artificiala”:

Mek va introduce un subiect in caseta de subiecte si va vedea o lista de sugestii de subiecte si o optiune de inregistrare a unui subiect nou in tabelul Subiect.

Echipa Best Book va fi responsabila pentru revizuirea manuala a subiectelor si mentinerea acestora curata si actualizata (ceea ce inseamna ca nu exista duplicate, greseli de ortografie si spam / corespunzator / fara spam).

In continuare, exista 2 cazuri:

  1. Aasif rasfoieste punctul final / requests (daca asa il numim noi) si observa ca Mek a cerut cea mai buna carte despre „Inteligenta artificiala” (adica aceasta recomandare este un raspuns la cerere).
  2. Aasif ar fi putut, de asemenea, sa decida in mod independent ca ar dori sa trimita o recomandare pentru cea mai buna carte despre „Inteligenta artificiala”

Decizie: Deocamdata, chiar daca Aasif decide sa creeze o recomandare ca raspuns la o cerere, de fapt nu va exista un link in baza de date (intre cerere si raspuns). Aceasta relatie va fi implicata pe baza temei. Deoarece Solicitarea si Recomandarea impartasesc ambele acelasi subiect … Apoi, putem arata tuturor celor care vizualizeaza pagina Solicitare toate recomandarile corespunzatoare pentru / sau acelasi subiect. In mod similar, cand suntem pe o pagina de recomandare, putem afisa toate solicitarile pentru acest subiect, precum si alte recomandari pentru acest subiect.

Ideea interesanta: Sa presupunem ca exista 3 Recomandari diferite privind „Inteligenta artificiala”. Unul dintre ei este de Aasif, unul dintre ei este de Lauren, iar unul dintre ei este de Mary. Am putea lasa patronii sa parcurga oricare dintre aceste 3 recomandari in mod independent sau am putea deduce o singura cea mai buna carte din fiecare recomandare pe acest subiect (fie pe baza de cate ori apare o carte ca castigatoare, fie pentru ca comunitatea voteaza o recomandare specifica) .

Depanare in timpul instalarii

  • Daca aveti probleme in timpul instalarii psycopg2, asigurati-va ca ati instalat dependentele pentru psycopg2. Acest lucru se poate face prin:

    $ sudo apt instaleaza python3-dev libpq-dev si apoi ruleaza $ pip install -r requirements.txt
  • in timp ce creati tabelele, conectati-va mai intai la baza de date:

    $ sudo -U postgres psql #daca sunteti pe ubuntu 20.04

    Daca intampinati o eroare care spune:

    sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) nu s-a putut conecta la server: Conexiunea refuzata Serverul ruleaza pe gazda “localhost” (127.0.0.1) si accepta conexiuni TCP / IP pe portul 5433?

    urmati acesti pasi:

    $ git checkout -b “anyBranchName” # Doar pentru a va asigura ca nu deranjati ramura principala accesati fisierul “THEBESTBOOKON.COM/bestbook/configs/__init__.py” si schimbati adresa portului la “5432” si creati, de asemenea, o baza de date goala numita “skillsera” $ postgres = # CREATE DATABASE skillsera proprietar “numele dvs. de utilizator creat in timpul configurarii bazei de date” Acum puteti crea tabelele: $ python3 >> import api >> api.core.Base.metadata.create_all (api .motor)