URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 10098
[ Назад ]

Исходное сообщение
"скрипт не видит библиотеку."

Отправлено PinkMan , 12-Май-16 02:17 
Здравствуйте уважаемые Питонщики!

Я к сожалению не знаю питон и хоть помаленьку выделяю время на его изучение но пока в нем даже не школьник.

В процессе моей жизнедеятельности:) возникла необходимовть понять как работает программка миддлер написанная на питоне. доступна тут:https://code.google.com/archive/p/middler/source/default/sou...

а конкретней ее самая первая версия 0.95r1

уже несколько раз бросал и возврашался к попытке ее запустить, но моя настойчивость ума мне не добавляет :).

завис на том что один из модулей выдает вот такую ошибку:

root[~/0.95r1/middlerlib/plugins]# ./plugin-keylogger-INGUARDIANS-ONLY.py
Traceback (most recent call last):
  File "./plugin-keylogger-INGUARDIANS-ONLY.py", line 4, in <module>
    import support.header as header
  File "/root/0.95r1/middlerlib/plugins/support/header.py", line 3, in <module>
    from JLog import *
ImportError: No module named JLog

root[~/0.95r1/middlerlib/plugins]# apt-cache search JLog
libslf4j-java - Simple Logging Facade for Java

root[~/0.95r1/middlerlib/plugins]# apt-get install libslf4j-java
Reading package lists... Done
Building dependency tree      
Reading state information... Done
libslf4j-java is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
root[~/0.95r1/middlerlib/plugins]#

тоесть библиотека для явы установлена но питон ее не видит.

как это исправить?

много гуглил но в сети нет подобных проблем и вообще нет информации по этой программке в которой можно найти хоть что-то полезное.

прошу тех кто знает дать готовое решение или пнуть меня в нужном направлении.

выше вывод только одного плагина, полный текст ошибок ниже:

root[~/0.95r1]# python ./middler.py -h
>>plugindir: /root/0.95r1/middlerlib/plugins<<

Error loading plugin plugin-metasploit-INGUARDIANS-ONLY.py
Traceback (most recent call last):
  File "/root/0.95r1/middlerlib/__init__.py", line 275, in <module>
    PLUGINS.append(__import__("middlerlib.plugins.%s"%filename[:-3], None, None, "middlerlib.plugins"))
  File "/root/0.95r1/middlerlib/plugins/plugin-metasploit-INGUARDIANS-ONLY.py", line 4, in <module>
    import support.header as header
  File "/root/0.95r1/middlerlib/plugins/support/header.py", line 3, in <module>
    from JLog import *
ImportError: No module named JLog
Error loading plugin plugin-keylogger-INGUARDIANS-ONLY.py
Traceback (most recent call last):
  File "/root/0.95r1/middlerlib/__init__.py", line 275, in <module>
    PLUGINS.append(__import__("middlerlib.plugins.%s"%filename[:-3], None, None, "middlerlib.plugins"))
  File "/root/0.95r1/middlerlib/plugins/plugin-keylogger-INGUARDIANS-ONLY.py", line 4, in <module>
    import support.header as header
  File "/root/0.95r1/middlerlib/plugins/support/header.py", line 3, in <module>
    from JLog import *
ImportError: No module named JLog
Error loading plugin plugin-beef-INGUARDIANS-ONLY.py
Traceback (most recent call last):
  File "/root/0.95r1/middlerlib/__init__.py", line 275, in <module>
    PLUGINS.append(__import__("middlerlib.plugins.%s"%filename[:-3], None, None, "middlerlib.plugins"))
  File "/root/0.95r1/middlerlib/plugins/plugin-beef-INGUARDIANS-ONLY.py", line 4, in <module>
    import support.header as header
  File "/root/0.95r1/middlerlib/plugins/support/header.py", line 3, in <module>
    from JLog import *
ImportError: No module named JLog
>> Had to set plugin directory relative to current dir - plugindir: ./plugins<<

Благодарю всех кто сможет помочь.


Содержание

Сообщения в этом обсуждении
"скрипт не видит библиотеку."
Отправлено ALex_hha , 12-Май-16 23:23 
> тоесть библиотека для явы установлена но питон ее не видит.

а с чего бы это питону видеть бибилиотеку для java?

Я так понимаю, что речь идет об этом модуле 0.95r1/middlerlib/JLog.py

$ python middler.py --version
>>plugindir: /usr/lib64/python2.7/site-packages/middlerlib/plugins<<

middler.py 1.0

хз как там скачать 0.95r1

https://code.google.com/archive/p/middler/wikis/Installation...

читали?


"скрипт не видит библиотеку."
Отправлено ALex_hha , 13-Май-16 12:15 

$ python -c 'import JLog; print dir(JLog)'
['DEBUG_LOGGING', 'DEVELOPER_LOGGING', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'debug_log', 'debug_log_file', 'debug_log_lock', 'debug_log_no_newline', 'dev_log_file', 'dev_log_lock', 'developer_log', 'error_log', 'initialize_logging', 'log', 'stop_logging', 'thread']

$ python -c 'import JLog; print list(globals().items()[2])'
['JLog', <module 'JLog' from '/usr/lib64/python2.7/site-packages/JLog.pyc'>]



"скрипт не видит библиотеку."
Отправлено PinkMan , 13-Май-16 19:06 
ALex_hha, благодарю за помощь, но пока не получается...

> хз как там скачать 0.95r1

https://storage.googleapis.com/google-code-archive-source/v2...

в архиве все версии

> https://code.google.com/archive/p/middler/wikis/Installation...
> читали?

да, все установлено, ставлю на дебиан 8.

>python -c 'import JLog; *** , обе команды выдают ошибку "ImportError: No module named JLog"


"скрипт не видит библиотеку."
Отправлено ALex_hha , 20-Май-16 17:15 
> да, все установлено, ставлю на дебиан 8.
>>python -c 'import JLog; *** , обе команды выдают ошибку "ImportError: No module named JLog"

и где же находится JLog.py? Я специально привел вывод его расположения


"скрипт не видит библиотеку."
Отправлено PinkMan , 22-Май-16 04:20 
> и где же находится JLog.py? Я специально привел вывод его расположения

в системе его нет, откуда его брать?

есть в архиве с програмой: ~/0.95r1/middlerlib/JLog.py но она его не видит..



"скрипт не видит библиотеку."
Отправлено Andrey Mitrofanov , 22-Май-16 17:30 
> есть в архиве с програмой: ~/0.95r1/middlerlib/JLog.py но она его не видит..

ПРОГРАММА: Откройте мне ве-е-еки!!


"скрипт не видит библиотеку."
Отправлено ALex_hha , 23-Май-16 16:35 
> есть в архиве с програмой: ~/0.95r1/middlerlib/JLog.py но она его не видит..

естественно не видит. Вы в курсе как и где питон ищет модули?

6.1.2. The Module Search Path

When a module named spam is imported, the interpreter first searches for a built-in module with that name. If not found, it then searches for a file named spam.py in a list of directories given by the variable sys.path. sys.path is initialized from these locations:

  * the directory containing the input script (or the current directory).
  * PYTHONPATH (a list of directory names, with the same syntax as the shell variable PATH).
  * the installation-dependent default.

After initialization, Python programs can modify sys.path. The directory containing the script being run is placed at the beginning of the search path, ahead of the standard library path. This means that scripts in that directory will be loaded instead of modules of the same name in the library directory. This is an error unless the replacement is intended. See section Standard Modules for more information.

Я же специально показал путь, где питон его видит ;)

Набери в консоли питона


import sys
print '\n'.join(sys.path)

тогда увидишь пути, в которых интерпретатор будет искать

Если таки хочется добавить свой кастомный путь


import sys
sys.path.append("/home/user/0.95r1/middlerlib")

import JLog
print dir(JLog)



"скрипт не видит библиотеку."
Отправлено PinkMan , 24-Май-16 02:04 
Andrey Mitrofanov,
>> ПРОГРАММА: Откройте мне ве-е-еки!!

Не понял что ты хотел этим сказать... то что питоновый скрипт не программа?
Так и я не программист - пытаюсь понять в меру своего разумения, когда-нибуть повышу уровень.

ALex_hha,
Мое Вам безмерное спасибо!!! , теперь знаю как пути добавлять! столько времени секономлено!
Я месяц то пытался настроить то откладывал на потом из-за нехватки времени.

Добавил в начало */middlerlib/plugins/support/header.py

 
import sys
sys.path.append("/home/user/0.95r1/middlerlib")
import JLog

и все наконец заработало!

Искренне Вас благодарю за неоценимую помощь новичку!