كيفية الحصول على عنوان URL الحالي باستخدام السيلينيوم

How Get Current Url With Selenium



السيلينيوم هي أداة لاختبار المتصفح وأتمتة الويب وكشط الويب. أثناء العمل في مشاريع السيلينيوم الخاصة بك ، قد تحتاج إلى معرفة عنوان URL للصفحة التي يعرضها متصفح الويب الذي يتحكم فيه السيلينيوم. قد تكون هذه المعلومات مفيدة لتتبع عنوان URL حيث استخرجت بعض البيانات حتى تتمكن من تحديث البيانات تلقائيًا باستخدام بعض النصوص البرمجية.

في هذه المقالة ، سأوضح لك كيفية الحصول على عنوان URL الحالي للمتصفح باستخدام السيلينيوم. لذلك دعونا نبدأ.







المتطلبات الأساسية:

لتجربة أوامر وأمثلة هذه المقالة ، يجب أن يكون لديك ،



1) توزيعة Linux (يفضل Ubuntu) مثبتة على جهاز الكمبيوتر الخاص بك.
2) Python 3 مثبت على جهاز الكمبيوتر الخاص بك.
3) تثبيت PIP 3 على جهاز الكمبيوتر الخاص بك.
4) بايثون فيرتالينف حزمة مثبتة على جهاز الكمبيوتر الخاص بك.
5) Mozilla Firefox أو متصفحات الويب Google Chrome مثبتة على جهاز الكمبيوتر الخاص بك.
6) يجب معرفة كيفية تثبيت Firefox Gecko Driver أو Chrome Web Driver.



لاستيفاء المتطلبات 4 و 5 و 6 ، يرجى قراءة مقالتي مقدمة عن السيلينيوم مع بايثون 3 في Linuxhint.com.





يمكنك العثور على العديد من المقالات حول الموضوعات الأخرى على LinuxHint.com . تأكد من التحقق منها إذا كنت بحاجة إلى أي مساعدة.

إعداد دليل المشروع:

للحفاظ على كل شيء منظمًا ، قم بإنشاء دليل مشروع جديد عنوان url السيلينيوم / على النحو التالي:



$مكدير -pvالسيلينيوم- url/السائقين

انتقل إلى عنوان url السيلينيوم / دليل المشروع على النحو التالي:

$قرص مضغوطالسيلينيوم- url/

قم بإنشاء بيئة افتراضية Python في دليل المشروع على النحو التالي:

$Virtualenv .venv

تفعيل البيئة الافتراضية كالتالي:

$مصدر.venv/صباحا/تفعيل

قم بتثبيت مكتبة Selenium Python في بيئتك الافتراضية باستخدام PIP3 على النحو التالي:

$ pip3 قم بتثبيت السيلينيوم

قم بتنزيل وتثبيت جميع برامج تشغيل الويب المطلوبة في ملف السائقين/ دليل المشروع. لقد شرحت عملية تنزيل برامج تشغيل الويب وتثبيتها في مقالتي مقدمة عن السيلينيوم مع بايثون 3 . إذا كنت بحاجة إلى أي مساعدة ، فابحث عن LinuxHint.com لتلك المقالة.

سأستخدم متصفح الويب Google Chrome في العرض التوضيحي في هذه المقالة. لذلك ، سأستخدم ملف chromedriver ثنائي مع السيلينيوم. يجب عليك استخدام ملف سائق الوزغة ثنائي إذا كنت تريد استخدام متصفح الويب Firefox.

قم بإنشاء نص بايثون ex01.py في دليل مشروعك واكتب سطور الرموز التالية فيه.

من عندالسيلينيوميستوردwebdriver
من عندالسيلينيوم.webdriver.مشترك.مفاتيح يستوردمفاتيح
والخيارات=webdriver.خيارات Chrome()
والخيارات.مقطوعة الرأس = حقيقي
المتصفح=webdriver.كروم(قابل للتنفيذ='./drivers/chromedriver'ووالخيارات=والخيارات)
المتصفح.احصل على('https://duckduckgo.com/')
مطبعة(المتصفح.Current_url)
المتصفح.أغلق()

بمجرد الانتهاء ، احفظ ملف ex01.py نص بايثون.

هنا ، يستورد السطر 1 والخط 2 جميع المكونات المطلوبة من مكتبة Python selenium.

ينشئ السطر 4 كائنًا من خيارات Chrome ، ويمكّن السطر 5 الوضع بدون رأس لمتصفح الويب Chrome.

الخط 7 يخلق كروم المتصفح كائن باستخدام chromedriver ثنائي من السائقين/ دليل المشروع.

يخبر السطر 9 المتصفح بتحميل موقع duckduckgo.com.

يقوم السطر 10 بطباعة عنوان URL الحالي للمتصفح. هنا، browser.current_url يتم استخدام الخاصية للوصول إلى عنوان URL الحالي للمتصفح.

السطر 12 يغلق المتصفح.

قم بتشغيل نص بايثون ex01.py على النحو التالي:

$ python3 ex01.السنة التحضيرية

كما ترى ، فإن عنوان URL الحالي ( https://duckduckgo.com ) على وحدة التحكم.

في المثال السابق ، قمت بزيارة موقع الويب duckduckgo.com وطباعة عنوان URL الحالي على وحدة التحكم. يؤدي هذا إلى إرجاع عنوان URL للصفحة التي نزورها. ليس خياليًا جدًا لأننا نعرف بالفعل عنوان URL للصفحة. الآن ، دعنا نبحث عن شيء ما على DuckDuckGo ونحاول طباعة عنوان URL لصفحة نتائج البحث على وحدة التحكم.

قم بإنشاء نص بايثون ex02.py في دليل مشروعك واكتب سطور الرموز التالية فيه.

من عندالسيلينيوميستوردwebdriver
من عندالسيلينيوم.webdriver.مشترك.مفاتيح يستوردمفاتيح
والخيارات=webdriver.خيارات Chrome()
والخيارات.مقطوعة الرأس = حقيقي
المتصفح=webdriver.كروم(قابل للتنفيذ='./drivers/chromedriver'ووالخيارات=والخيارات)
المتصفح.احصل على('https://duckduckgo.com/')
مطبعة(المتصفح.Current_url)
البحث=المتصفح.find_element_by_id('search_form_input_homepage')
البحثSend_keys('مقر السيلينيوم'+ مفاتيح.أدخل)
مطبعة(المتصفح.Current_url)
المتصفح.أغلق()

بمجرد الانتهاء ، احفظ ملف ex02.py نص بايثون.

هنا ، الأسطر 1-10 هي نفسها كما في ex01.py . لذا ، أنا لا أشرحها مرة أخرى.

يجد السطر 12 مربع نص البحث ويخزنه في ملف البحث عامل.

يرسل السطر 13 استعلام البحث مقر السيلينيوم في ال البحث مربع النص والضغط على باستخدام مفتاح المفاتيح .

بمجرد تحميل صفحة البحث ، browser.current_url يستخدم للوصول إلى عنوان URL الحالي المحدث.

يطبع السطر 15 عنوان URL الحالي المحدث على وحدة التحكم.

السطر 17 يغلق المتصفح.

قم بتشغيل ex02.py نص Python على النحو التالي:

$ python3 ex02.السنة التحضيرية

كما ترون ، نص بايثون ex02.py يطبع 2 URLs.

الأول هو عنوان URL للصفحة الرئيسية لمحرك بحث DuckDuckGo.

الثاني هو عنوان URL الحالي المحدث بعد إجراء بحث على محرك بحث DuckDuckGo باستخدام الاستعلام مقر السيلينيوم .

استنتاج:

في هذه المقالة ، أوضحت لك كيفية الحصول على عنوان URL الحالي لمتصفح الويب باستخدام مكتبة Selenium Python. الآن ، يجب أن تكون قادرًا على جعل مشاريع السيلينيوم الخاصة بك أكثر إثارة للاهتمام.