روابط السيلينيوم ويبدريفر بيثون
-
04-10-2019 - |
سؤال
لا يمكنني جعل روابط Python لـ WebDriver عملية. هنا البرنامج التعليمي للتثبيت.
easy_install webdriver
لن أجد حزمة WebDriver ، لذا لا بد لي من تثبيتها يدويًا من المصادر. لقد قمت بتنزيل المصدر من Trunk ، Set WebDriver و بيثون المتغيرات و WebDriver المثبتة:
~$ cd ~
~$ svn checkout http://selenium.googlecode.com/svn/trunk/ selenium-read-only
~$ cd selenium-read-only
~# python setup.py install
~$ env |grep PYT
~$> PYTHONPATH=:/home/ockonal/selenium-read-only/../../../firefox/lib-src:/home/ockonal/selenium-read-only/..
~$ env |grep WEB
~$> WEBDRIVER=/home/ockonal/selenium-read-only
هنا إخراج SETUP.PY SCRIPT.
ثم قمت بتنزيل RemotedRiverserver.jar وركضه:
java -jar RemoteDriverServer.jar 8888
الآن أريد تضمين وحدة WebDriver في نص Python:
from selenium.firefox.webdriver import WebDriver
المستورد: لا توجد وحدة تدعى firefox.webdriver
المحلول
جرب هذا.
أظن أنه تم تثبيت السيلينيوم على:
/usr/local/lib/python2.6/
في مجلد حزم الموقع أو حزم DIST.
نظرًا لأن رابط الإعداد الخاص بك. OPPUTTER مكسور ، لا يمكنني رؤية النتائج ، لذا سأقوم بتقديم بعض الافتراضات بناءً على إعداد "عادي".
يجب أن توجد واحدة من هذه المجلدات:
/usr/local/lib/python2.6/dist-packages/selenium/firefox/
أو
/usr/local/lib/python2.6/site-packages/selenium/firefox/
هذا هو المجلد الذي يجب أن توجد فيه مكتبة Python استنادًا إلى الإعداد.
عد الآن إلى المجلد حيث قمت بتنزيل المصدر وانتقل إليه.
./firefox/source/py/
انسخ جميع الملفات المصدر إلى أي واحد من هذين الملفتين موجود.
/usr/local/lib/python2.6/dist-packages/selenium/firefox/
أو
/usr/local/lib/python2.6/site-packages/selenium/firefox/
هذا هو ما يعادل "تثبيت يدوي". على الرغم من أنني لست متأكدًا من سبب حاجتك لأن أجزاء Firefox من الحزمة محددة بوضوح في مصدر الإعداد.
...
'selenium.firefox': 'firefox/src/py',
...
إذا لم يكن هناك شيء للسيلينيوم أسفل حزم الموقع أو مجلدات حزم dist ، فقد لا يكون تثبيت "الإعداد.
تأكد من تشغيل "setup.py تثبيت" مع Sudo إذا لم تكن قد لم تكن بالفعل. نظرًا لأن أذونات الجذر ضرورية لتعديل/إضافة أي شيء تحت "/usr".
نصائح أخرى
يجب أن تكون أحدث روابط السيلينيوم (والتي تشمل WebDriver) pip قابل للتثبيت:
pip install selenium
تحتاج نسخة build/webdriver-extension.zip
إلى مجلد تثبيت Python الخاص بك. فقط انسخ build/webdriver-extension.zip
إلى /usr/lib/pythonX.X/site-packages/selenium-2.0_dev-py2.6.egg/selenium/firefox
. إنه امتداد تقوم بتثبيته يدويًا.
sudo pip install selenium
فشلت بالنسبة لي على أوبونتو 10.04
sudo pip install -U selenium
عمل
واجهت نفس المشكلة وتوصلت إلى حل مختلف. محاولة تشغيل السيلينيوم في بيثون 3 الذي قمت بتثبيته عبر homebrew
, ، و selenium
تم تثبيتها عبر pip3
. حصلت على نفس الخطأ من "المستورد: لا توجد وحدة تسمى" السيلينيوم ". فحص طريقي باستخدام:
import sys
print(sys.path)
ووجد أنه عندما تم تثبيت السيلينيوم كان بالفعل في هذه القائمة (/usr/local/lib/Python3.4/site-packages
).
ومع ذلك ، فقد قمت بتنزيل الثنائي وبالتالي كان المجلد المسمى Selenium ضمن مجلد Wrapper of selenium-2.45
. على الرغم من أنه ربما لم يكن الحل الأعظم ، فقد تمكنت من تشغيل السيلينيوم عن طريق نسخ مجلد السيلينيوم الداخلي إلى نفس مستوى selenium-2.45
مجلد.
لا أعتقد أن هذا الحل النهائي ، لأنه يدور حول البرنامج النصي للإعداد ، ولكن في الوقت الحالي ، يبدو أنه يعمل بشكل جيد ، وأنا قادر على استخدام وحدة السيلينيوم ومحتوياته (حتى الآن).