استيراد وحدات بايثون في جيثون
-
16-09-2020 - |
سؤال
أواجه بعض المشكلات في استيراد scapy تحت jython.لقد كنت أمارس لغة جافا منذ فترة طويلة، ولكن لغة بايثون ليوم أو يومين فقط.
الحالة البسيطة لإعادة إنتاج المشكلة هي:
$jython
>>> import sys
>>> sys.path
['', '/usr/share/jython/Lib', '/usr/lib/site-python', '__classpath__']
>>> from scapy.all import *
Traceback (innermost last):
File "<console>", line 1, in ?
ImportError: no module named scapy
إذا قمت بنفس الخطوات بالضبط أدناه python
, ، كل شيء يعمل.كيف أخبر جيثون باستخدام scapy؟إذا كان ذلك مفيدًا، فأنا أستخدم نظام التشغيل ubuntu 10.04 وقمت بتثبيت jython وscapy عبر apt-get install
المحلول
لقد فعلت الشيء الصحيح بطباعة sys.path.الآن يجب عليك الذهاب إلى python Shell، والقيام بما يلي:
$ python
>>> import scapy
>>> print scapy.__file__
سيُظهر هذا المكان الذي يتم استيراد scapy منه.المشكلة الأكثر احتمالاً هي أن jython sys.path الخاص بك لا يتضمن الدليل الذي يحتوي على scapy.
نصائح أخرى
يمكنك القيام بالتثبيت السهل لـ jython.
يجري:
jython ez_setup.py
من http://peak.telecommunity.com/dist/ez_setup.py
ثم ستحصل على برنامج نصي easy_install تحت Jython/Bin ، اذهب إلى هناك و
jython easy_install scapy
(أو أي وحدة تحتاجها)
ثم في المرة القادمة التي تقوم فيها بتشغيل jython، ستتمكن من استيراده.
تعديل من إجابة أمالا.الكود الخاص به لا يعمل معي، لكنني قمت بحل المشكلة بشيء مماثل.هذا يعمل بدلا من ذلك.
تحميل ez_setup.py
من هنا http://peak.telecommunity.com/dist/ez_setup.py
ثم اركض jython ez_setup.py scapy
.
لا يهم تشغيله على أي مسار مجلد