# Selenium Python (4). كيفية استخدام Selenium مع Python والـ Proxies

اكتشف قوة Selenium مع Python واستخدم الوكلاء لكشط الويب والأتمتة بكفاءة. عزز جمع البيانات الخاصة بك بخوادم الوكيل الميسورة من FineProxy.

- الكاتب: [Brandon Perry](https://fineproxy.org/ar/brandon-perry/)
- نُشر: 2024-06-04T11:17:19.000Z
- حُدّث: 2024-05-27T11:43:12.000Z
- Canonical: https://fineproxy.org/ar/selenium-python-4-how-to-use-selenium-with-python-and-proxies/

عند العمل مع جمع البيانات من الويب أو الأتمتة باستخدام Selenium و Python، يمكن أن يكون استخدام الوكلاء ضروريًا لتجنب حظر IP وتحسين كفاءة جمع البيانات. ستوجهك هذه المقالة خلال إعداد واستخدام الوكلاء في Selenium مع Python.

## ما هو Selenium ولماذا استخدام الوكلاء؟

**Selenium** أداة قوية لأتمتة متصفحات الويب، وغالباً ما تُستخدم لجمع بيانات الويب واختبار تطبيقات الويب. **الوكلاء** خوادم وسيطة تفصل بين المستخدمين النهائيين والمواقع التي يتصفحونها، مما يساعد على إخفاء عناوين IP وإدارة أحمال الطلبات.

## إعداد Selenium مع الوكلاء

قبل البدء في الكود، تأكد من أن لديك جميع الأدوات اللازمة مثبتة:

-   Python
-   Selenium (`pip install selenium`)
-   برنامج تشغيل متصفح ويب (على سبيل المثال، ChromeDriver لـ Chrome أو GeckoDriver لـ Firefox)

## دليل خطوة بخطوة لاستخدام الوكلاء في Selenium

### 1\. إعداد Chrome مع وكيل

لتكوين Chrome لاستخدام خادم وكيل، تحتاج إلى إعداد الإمكانيات المطلوبة في Selenium.

```python
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

# Specify proxy details
proxy = "your_proxy_ip:port"

# Set up Chrome options
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument(f'--proxy-server={proxy}')

# Initialize WebDriver
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)

# Open a website to verify the proxy
driver.get("http://whatismyipaddress.com")

# Close the browser
driver.quit()
```

## بروكسي مع مصادقة

إذا كان الوكيل الخاص بك يتطلب المصادقة، فيمكنك استخدام `Proxy` الفئة من `selenium.webdriver.common.proxy`.

```python
from selenium import webdriver
from selenium.webdriver.common.proxy import Proxy, ProxyType
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

# Proxy settings
proxy = Proxy()
proxy.proxy_type = ProxyType.MANUAL
proxy.http_proxy = "your_proxy_ip:port"
proxy.ssl_proxy = "your_proxy_ip:port"
proxy.add_argument('--proxy-auth=user:password')

capabilities = webdriver.DesiredCapabilities.CHROME
proxy.add_to_capabilities(capabilities)

# Initialize WebDriver
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), desired_capabilities=capabilities)

# Open a website to verify the proxy
driver.get("http://whatismyipaddress.com")

# Close the browser
driver.quit()
```

## استخدام Firefox مع وكيل

لتكوين Firefox لاستخدام وكيل، عدّل إعدادات ملف تعريف Firefox.

```python
from selenium import webdriver
from selenium.webdriver.firefox.service import Service
from webdriver_manager.firefox import GeckoDriverManager

# Proxy details
proxy_ip = "your_proxy_ip"
proxy_port = "port"

# Set up Firefox profile
profile = webdriver.FirefoxProfile()
profile.set_preference("network.proxy.type", 1)
profile.set_preference("network.proxy.http", proxy_ip)
profile.set_preference("network.proxy.http_port", int(proxy_port))
profile.set_preference("network.proxy.ssl", proxy_ip)
profile.set_preference("network.proxy.ssl_port", int(proxy_port))

# Initialize WebDriver
driver = webdriver.Firefox(service=Service(GeckoDriverManager().install()), firefox_profile=profile)

# Open a website to verify the proxy
driver.get("http://whatismyipaddress.com")

# Close the browser
driver.quit()
```

## استكشاف الأخطاء الشائعة

**مصادقة الوكيل:** إذا كان وكيلك يتطلب تسجيل دخول، تأكد من تعيين بيانات الاعتماد بشكل صحيح.

**حظر IP:** قد تحظر بعض المواقع الويب الوكلاء. استخدم وكلاء سكنية أو متناوبة للتخفيف من هذه المشكلة.

## ملخص

يمكن لاستخدام الوكلاء مع Selenium و Python أن يساعدك على تجاوز قيود IP وتعزيز مشاريع web scraping الخاصة بك. سواء كان استخدامك Chrome أو Firefox، فإن إعداد الوكلاء ينطوي على تكوين خيارات المتصفح والإمكانيات لتوجيه حركة المرور عبر خادم الوكيل.

| المتصفح | طريقة الإعداد | المصادقة | مقتطف الكود متاح |
| --- | --- | --- | --- |
| Chrome | خيارات Chrome | نعم | نعم |
| Firefox | ملف Firefox | نعم | نعم |

باتباع هذه الخطوات، يمكنك التأكد من أن أنشطة التجريف الخاصة بك تظل فعالة دون انقطاع. إذا كان لديك أي أسئلة أو أفكار للدروس المستقبلية، فلا تتردد في ترك تعليق!
