Пара предложений к версии 0.06

4 years 9 months ago #28 by BaMba
BaMba created the topic: Пара предложений к версии 0.06
День добрый!
В ходе установки и использования версии 0.06 обнаружил, что сканер падает если не может работать с архивом (например битый или прав не хватает), поэтому внес пару правок (как работать с github ещё не знаю, поэтому указываю здесь):

diff --git a/py/sopds-scan.py b/py/sopds-scan.py
index 996b155..ec2b22e 100755
--- a/py/sopds-scan.py
+++ b/py/sopds-scan.py
@@ -164,6 +164,7 @@ def processzip(db,fb2,name,full_path,file):
     rel_file=os.path.join(rel_path,name)
     if cfg.ZIPRESCAN or db.zipisscanned(rel_file)==0:
        cat_id=db.addcattree(rel_path,1)
+       try:
            z = zipf.ZipFile(file, 'r', allowZip64=True, codepage=cfg.ZIP_CODEPAGE)
            filelist = z.namelist()
            for n in filelist:
@@ -176,6 +177,10 @@ def processzip(db,fb2,name,full_path,file):
                    print('Error processing zip archive:',file,' file: ',n)
            z.close()
            arch_scanned+=1
+       except:
+           print('Error processing zip archive:',file)
+#       finally:
+#           if z: z.close()
     else:
        arch_skipped+=1
        if VERBOSE:

Мне ещё, правда, не совсем понятна вот такая статистика:

/opt/sopds(branch:master*) » sudo py/sopds-scan.py
Error processing zip archive: /mnt/home/books/kids/action/Arden_Uiljam__Tajna_hohochuxhej_teni.fb2.zip  file:  Arden_Uiljam__Tajna_hohochuxhej_teni.fb2
....
Books added      :  914
Books skipped    :  1805
Books in archives:  616
Archives scanned :  2261
Archives skipped :  0
Time estimated: 0  hours,  0  minutes,  30  seconds.

Почему так много skipped? Но это я ещё не разбирался.
Ещё хочу предложить описание моей установки на ubuntu + nginx, вдруг кому-то пригодится:

cd /opt
sudo git clone git://github.com/mitshel/sopds sopds     
sudo apt-get install mysql-server
wget ftp.pl.debian.org/debian/pool/main/m/mys...ctor_1.0.9-1_all.deb
(нашел тут:  packages.debian.org/ru/experimental/all/...l.connector/download )
sudo dpkg -i python3-mysql.connector_1.0.9-1_all.deb
sudo vim conf/sopds.conf  - настройка
Кстати, из пожеланий.. можно ли добавить возможность указать каталоги, которые нужно гнорировать при сканировании?
sudo vim dbcrea.sql - комментировать создание БД и т.д.
opt/sopds/db(branch:master*) » mysql sopds < dbcrea.sql
/opt/sopds/db(branch:master*) » mysql sopds < genres.sql 
Ещё рекомендую разделить dbcrea.sql на два - один на создание пользователя и БД, второй - на создание таблиц и прочего. Тогда легче обновляться на следующую версию (если поменялись таблички и т.д.) - ни базу, ни пользователя не нужно создавать.
sudo py/sopds-scan.py
sudo apt-get install nginx-full uwsgi
sudo locale-gen ru_RU.UTF-8
sudo vim /etc/nginx/sites-available/default:
...
        location /b/opds/ {
                alias /opt/sopds/py;
                uwsgi_pass      unix:///run/uwsgi/app/books-opds.socket;
                include         uwsgi_params;
                uwsgi_modifier1 9;
        }
sudo vim /etc/uwsgi/apps-available/books-opds.ini
[uwsgi]
plugins = cgi
socket = /run/uwsgi/app/books-opds.socket
cgi = /b/opds/=/opt/sopds/py
cgi-allowed-ext = .cgi
chown-socket = www-data:www-data

cd /etc/uwsgi/apps-enabled; sudo ln -s ../apps-available/books-opds.ini
sudo service uwsgi restart
sudo service nginx reload

Вот вроде и всё.
The topic has been locked.
  • BaMba
  • BaMba's Avatar Topic Author
  • Offline
  • Новый участник
  • Новый участник
More
4 years 9 months ago - 4 years 9 months ago #29 by mitshel
mitshel replied the topic: Пара предложений к версии 0.06
Skipped - действительно есть ошибка. В ближайшее время опубликую исправление.

За комментарии спасибо, обязательно постараюсь учесть.
Last Edit: 4 years 9 months ago by mitshel.
The topic has been locked.
  • mitshel
  • mitshel's Avatar
  • Offline
  • Администратор
  • Администратор
More
Time to create page: 0.115 seconds