# Selenium Python (4). Selenium mit Python und Proxies verwenden

Entdecken Sie die Kraft von Selenium mit Python und nutzen Sie Proxys für effizientes Web-Scraping und Automatisierung. Steigern Sie Ihre Datenerfassung mit den preisgünstigen Proxy-Servern von FineProxy.

- Autor: [Brandon Perry](https://fineproxy.org/de/brandon-perry/)
- Veröffentlicht: 2024-06-04T11:17:19.000Z
- Aktualisiert: 2024-05-27T11:43:12.000Z
- Canonical: https://fineproxy.org/de/selenium-python-4-how-to-use-selenium-with-python-and-proxies/

Bei der Arbeit mit Web-Scraping oder Automatisierung mit Selenium und Python können Proxies essentiell sein, um IP-Sperren zu vermeiden und Ihre Datenerfassungseffizienz zu verbessern. Dieser Artikel führt Sie durch die Einrichtung und Verwendung von Proxies in Selenium mit Python.

## Was ist Selenium und warum Proxies verwenden?

**Selenium** ist ein leistungsstarkes Tool zur Automatisierung von Webbrowsern, das häufig für Web-Scraping und zum Testen von Webanwendungen verwendet wird. **Proxys** sind Zwischenserver, die Endbereiche von den von ihnen besuchten Websites trennen und dabei helfen, IP-Adressen zu maskieren und Anfragemengen zu verwalten.

## Selenium mit Proxies konfigurieren

Bevor Sie mit dem Code beginnen, stellen Sie sicher, dass Sie die erforderlichen Tools installiert haben:

-   Python
-   Selenium (`pip install selenium`)
-   Ein Web-Browser-Treiber (z. B. ChromeDriver für Chrome oder GeckoDriver für Firefox)

## Schritt-für-Schritt-Anleitung zum Verwenden von Proxies in Selenium

### 1\. Chrome mit einem Proxy konfigurieren

Um Chrome für die Nutzung eines Proxy-Servers zu konfigurieren, müssen Sie die gewünschten Funktionen in Selenium einrichten.

```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 mit Authentifizierung

Wenn Ihr Proxy eine Authentifizierung erfordert, können Sie die `Proxy` Klasse aus `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 mit einem Proxy verwenden

Um Firefox für die Nutzung eines Proxies zu konfigurieren, ändern Sie die Firefox-Profileinstellungen.

```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()
```

## Behebung häufiger Probleme

**Proxy-Authentifizierung:** Wenn Ihr Proxy einen Login erfordert, stellen Sie sicher, dass die Anmeldedaten korrekt eingestellt sind.

**IP-Blockierung:** Einige Websites können Proxys weiterhin blockieren. Verwenden Sie Residential-Proxys oder rotierende Proxys, um dieses Problem zu beheben.

## Zusammenfassung

Die Verwendung von Proxys mit Selenium und Python kann Ihnen dabei helfen, IP-Beschränkungen zu umgehen und Ihre Web-Scraping-Projekte zu verbessern. Ob Sie Chrome oder Firefox verwenden – das Setup von Proxys umfasst die Konfiguration der Browser-Optionen und Funktionen, um Traffic über den Proxy-Server zu leiten.

| Browser | Einrichtungsmethode | Authentifizierung | Code-Snippet verfügbar |
| --- | --- | --- | --- |
| Chrome | ChromeOptions | Ja | Ja |
| Firefox | FirefoxProfile | Ja | Ja |

Wenn Sie diese Schritte befolgen, stellen Sie sicher, dass Ihre Scraping-Aktivitäten unterbrechungsfrei und effizient ablaufen. Falls Sie Fragen oder Ideen für zukünftige Tutorials haben, hinterlassen Sie gerne einen Kommentar!
