Selenium ile Proxy Kullanımı: Eksiksiz Rehber
Tarayıcı otomasyonu ve scraping için GProxy proxy'lerini Selenium WebDriver ile yapılandırın. Chrome, Firefox, headless mod ve proxy kimlik doğrulaması ele alınır.
Ön koşullar
- ✓[
- ✓"
- ✓P
- ✓y
- ✓t
- ✓h
- ✓o
- ✓n
- ✓
- ✓3
- ✓.
- ✓8
- ✓+
- ✓
- ✓k
- ✓u
- ✓r
- ✓u
- ✓l
- ✓u
- ✓"
- ✓,
- ✓
- ✓"
- ✓S
- ✓e
- ✓l
- ✓e
- ✓n
- ✓i
- ✓u
- ✓m
- ✓
- ✓4
- ✓.
- ✓x
- ✓
- ✓k
- ✓u
- ✓r
- ✓u
- ✓l
- ✓u
- ✓
- ✓(
- ✓p
- ✓i
- ✓p
- ✓
- ✓i
- ✓n
- ✓s
- ✓t
- ✓a
- ✓l
- ✓l
- ✓
- ✓s
- ✓e
- ✓l
- ✓e
- ✓n
- ✓i
- ✓u
- ✓m
- ✓)
- ✓"
- ✓,
- ✓
- ✓"
- ✓T
- ✓a
- ✓r
- ✓a
- ✓y
- ✓ı
- ✓c
- ✓ı
- ✓
- ✓s
- ✓ü
- ✓r
- ✓ü
- ✓m
- ✓ü
- ✓n
- ✓ü
- ✓z
- ✓l
- ✓e
- ✓
- ✓e
- ✓ş
- ✓l
- ✓e
- ✓ş
- ✓e
- ✓n
- ✓
- ✓C
- ✓h
- ✓r
- ✓o
- ✓m
- ✓e
- ✓D
- ✓r
- ✓i
- ✓v
- ✓e
- ✓r
- ✓
- ✓v
- ✓e
- ✓y
- ✓a
- ✓
- ✓G
- ✓e
- ✓c
- ✓k
- ✓o
- ✓D
- ✓r
- ✓i
- ✓v
- ✓e
- ✓r
- ✓"
- ✓,
- ✓
- ✓"
- ✓A
- ✓k
- ✓t
- ✓i
- ✓f
- ✓
- ✓p
- ✓r
- ✓o
- ✓x
- ✓y
- ✓
- ✓p
- ✓a
- ✓k
- ✓e
- ✓t
- ✓i
- ✓
- ✓o
- ✓l
- ✓a
- ✓n
- ✓
- ✓b
- ✓i
- ✓r
- ✓
- ✓G
- ✓P
- ✓r
- ✓o
- ✓x
- ✓y
- ✓
- ✓h
- ✓e
- ✓s
- ✓a
- ✓b
- ✓ı
- ✓"
- ✓]
Adım adım kurulum
[
{
"
T
I
T
L
E
"
:
"
S
E
L
E
N
I
U
M
'
U
K
U
R
U
N
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
S
E
L
E
N
I
U
M
V
E
W
E
B
D
R
I
V
E
R
-
M
A
N
A
G
E
R
P
A
K
E
T
L
E
R
I
N
I
K
U
R
U
N
"
,
"
C
O
D
E
"
:
"
P
I
P
I
N
S
T
A
L
L
S
E
L
E
N
I
U
M
W
E
B
D
R
I
V
E
R
-
M
A
N
A
G
E
R
"
}
,
{
"
T
I
T
L
E
"
:
"
C
H
R
O
M
E
'
U
P
R
O
X
Y
I
L
E
Y
A
P
I
L
A
N
D
I
R
I
N
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
C
H
R
O
M
E
W
E
B
D
R
I
V
E
R
'
I
G
P
R
O
X
Y
I
L
E
A
Y
A
R
L
A
Y
I
N
"
,
"
C
O
D
E
"
:
"
F
R
O
M
S
E
L
E
N
I
U
M
I
M
P
O
R
T
W
E
B
D
R
I
V
E
R
\
N
F
R
O
M
S
E
L
E
N
I
U
M
.
W
E
B
D
R
I
V
E
R
.
C
H
R
O
M
E
.
O
P
T
I
O
N
S
I
M
P
O
R
T
O
P
T
I
O
N
S
\
N
\
N
O
P
T
S
=
O
P
T
I
O
N
S
(
)
\
N
O
P
T
S
.
A
D
D
_
A
R
G
U
M
E
N
T
(
'
-
-
P
R
O
X
Y
-
S
E
R
V
E
R
=
H
T
T
P
:
/
/
P
R
O
X
Y
.
G
P
R
O
X
Y
.
N
E
T
:
1
0
0
0
'
)
\
N
D
R
I
V
E
R
=
W
E
B
D
R
I
V
E
R
.
C
H
R
O
M
E
(
O
P
T
I
O
N
S
=
O
P
T
S
)
"
}
,
{
"
T
I
T
L
E
"
:
"
P
R
O
X
Y
K
I
M
L
I
K
D
O
Ğ
R
U
L
A
M
A
S
I
N
I
Y
Ö
N
E
T
I
N
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
K
I
M
L
I
K
D
O
Ğ
R
U
L
A
M
A
L
I
P
R
O
X
Y
'
L
E
R
I
Ç
I
N
B
I
R
C
H
R
O
M
E
E
K
L
E
N
T
I
S
I
O
L
U
Ş
T
U
R
U
N
"
,
"
C
O
D
E
"
:
"
I
M
P
O
R
T
Z
I
P
F
I
L
E
,
J
S
O
N
\
N
\
N
M
A
N
I
F
E
S
T
=
{
\
"
V
E
R
S
I
O
N
\
"
:
\
"
1
.
0
.
0
\
"
,
\
"
M
A
N
I
F
E
S
T
_
V
E
R
S
I
O
N
\
"
:
2
,
\
N
\
"
N
A
M
E
\
"
:
\
"
P
R
O
X
Y
A
U
T
H
\
"
,
\
N
\
"
P
E
R
M
I
S
S
I
O
N
S
\
"
:
[
\
"
P
R
O
X
Y
\
"
,
\
"
W
E
B
R
E
Q
U
E
S
T
\
"
,
\
"
W
E
B
R
E
Q
U
E
S
T
B
L
O
C
K
I
N
G
\
"
,
\
"
<
A
L
L
_
U
R
L
S
>
\
"
]
,
\
N
\
"
B
A
C
K
G
R
O
U
N
D
\
"
:
{
\
"
S
C
R
I
P
T
S
\
"
:
[
\
"
B
A
C
K
G
R
O
U
N
D
.
J
S
\
"
]
}
}
\
N
\
N
B
G
_
J
S
=
'
C
H
R
O
M
E
.
W
E
B
R
E
Q
U
E
S
T
.
O
N
A
U
T
H
R
E
Q
U
I
R
E
D
.
A
D
D
L
I
S
T
E
N
E
R
(
F
U
N
C
T
I
O
N
(
D
)
{
R
E
T
U
R
N
{
A
U
T
H
C
R
E
D
E
N
T
I
A
L
S
:
{
U
S
E
R
N
A
M
E
:
\
"
U
S
E
R
\
"
,
P
A
S
S
W
O
R
D
:
\
"
P
A
S
S
\
"
}
}
;
}
,
{
U
R
L
S
:
[
\
"
<
A
L
L
_
U
R
L
S
>
\
"
]
}
,
[
\
"
B
L
O
C
K
I
N
G
\
"
]
)
;
'
\
N
\
N
W
I
T
H
Z
I
P
F
I
L
E
.
Z
I
P
F
I
L
E
(
'
P
R
O
X
Y
_
A
U
T
H
.
Z
I
P
'
,
'
W
'
)
A
S
Z
P
:
\
N
Z
P
.
W
R
I
T
E
S
T
R
(
'
M
A
N
I
F
E
S
T
.
J
S
O
N
'
,
J
S
O
N
.
D
U
M
P
S
(
M
A
N
I
F
E
S
T
)
)
\
N
Z
P
.
W
R
I
T
E
S
T
R
(
'
B
A
C
K
G
R
O
U
N
D
.
J
S
'
,
B
G
_
J
S
)
\
N
\
N
O
P
T
S
.
A
D
D
_
E
X
T
E
N
S
I
O
N
(
'
P
R
O
X
Y
_
A
U
T
H
.
Z
I
P
'
)
"
}
,
{
"
T
I
T
L
E
"
:
"
R
O
T
A
S
Y
O
N
M
A
N
T
I
Ğ
I
E
K
L
E
Y
I
N
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
Y
E
N
I
D
R
I
V
E
R
Ö
R
N
E
K
L
E
R
I
O
L
U
Ş
T
U
R
A
R
A
K
I
P
'
L
E
R
I
D
E
Ğ
I
Ş
T
I
R
I
N
"
,
"
C
O
D
E
"
:
"
D
E
F
G
E
T
_
D
R
I
V
E
R
(
)
:
\
N
O
P
T
S
=
O
P
T
I
O
N
S
(
)
\
N
O
P
T
S
.
A
D
D
_
A
R
G
U
M
E
N
T
(
'
-
-
H
E
A
D
L
E
S
S
=
N
E
W
'
)
\
N
O
P
T
S
.
A
D
D
_
A
R
G
U
M
E
N
T
(
'
-
-
P
R
O
X
Y
-
S
E
R
V
E
R
=
H
T
T
P
:
/
/
P
R
O
X
Y
.
G
P
R
O
X
Y
.
N
E
T
:
1
0
0
0
'
)
\
N
R
E
T
U
R
N
W
E
B
D
R
I
V
E
R
.
C
H
R
O
M
E
(
O
P
T
I
O
N
S
=
O
P
T
S
)
\
N
\
N
F
O
R
U
R
L
I
N
U
R
L
S
:
\
N
D
R
I
V
E
R
=
G
E
T
_
D
R
I
V
E
R
(
)
\
N
D
R
I
V
E
R
.
G
E
T
(
U
R
L
)
\
N
#
.
.
.
E
X
T
R
A
C
T
D
A
T
A
\
N
D
R
I
V
E
R
.
Q
U
I
T
(
)
"
}
,
{
"
T
I
T
L
E
"
:
"
K
U
R
U
L
U
M
U
T
E
S
T
E
D
I
N
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
P
R
O
X
Y
'
N
I
N
Ç
A
L
I
Ş
T
I
Ğ
I
N
I
D
O
Ğ
R
U
L
A
Y
I
N
"
,
"
C
O
D
E
"
:
"
D
R
I
V
E
R
.
G
E
T
(
'
H
T
T
P
S
:
/
/
H
T
T
P
B
I
N
.
O
R
G
/
I
P
'
)
\
N
P
R
I
N
T
(
D
R
I
V
E
R
.
F
I
N
D
_
E
L
E
M
E
N
T
(
'
T
A
G
N
A
M
E
'
,
'
P
R
E
'
)
.
T
E
X
T
)
"
}
]
Kod örnekleri
Selenium ile neden proxy kullanmalısınız?
Selenium gerçek tarayıcıları otomatikleştirir; bu da onu JavaScript ağırlıklı siteleri kazımak için ideal kılar. Ancak otomatik tarayıcıları tek bir IP üzerinden çalıştırmak anti-bot sistemlerini hızla tetikler. GProxy'nin 10M+ residential IP havuzu, tarayıcınızın çıkış IP'sini değiştirmenize olanak tanır; böylece her oturum, 150+ ülkeden herhangi birinden gelen benzersiz bir ziyaretçi gibi görünür.
Chrome WebDriver proxy kurulumu
Chrome, proxy yapılandırmasını ChromeOptions argümanları üzerinden destekler. Kimlik doğrulaması gerektirmeyen basit kurulumlarda --proxy-server argümanını geçin. GProxy gibi kimlik doğrulamalı proxy'ler içinse proxy kimlik doğrulamasını yöneten bir Chrome eklentisine ihtiyacınız olur; çünkü Chrome, proxy URL'sinde kullanıcı adı:parola biçimini yerel olarak desteklemez.
Firefox WebDriver proxy kurulumu
Firefox, proxy yapılandırmasını FirefoxProfile veya Options tercihleri üzerinden yönetir. Chrome'un aksine Firefox, profil ayarları üzerinden proxy kimlik doğrulamasını destekler; bu da GProxy'nin kimlik doğrulamalı uç noktalarıyla yapılandırmayı biraz kolaylaştırır.
Headless mod ile ilgili noktalar
Selenium'u headless modda çalıştırmak sunucu dağıtımlarında yaygındır. Hem Chrome hem de Firefox, proxy ile headless çalışmayı destekler. Bazı anti-bot sistemlerinin headless tarayıcıları tespit ettiğini unutmayın — GProxy'nin residential IP'leri yardımcı olur, ancak ayrıca undetected-chromedriver kullanmayı veya gerçekçi tarayıcı parmak izleri eklemeyi değerlendirin.
Proxy rotasyon stratejisi
HTTP kütüphanelerinin aksine Selenium bir tarayıcı oturumu sürdürür, bu yüzden proxy'leri istek başına kolayca değiştiremezsiniz. Bunun yerine oturum başına rotasyon yapın: her görev için farklı bir proxy ile yeni bir WebDriver örneği oluşturun. GProxy'nin backconnect uç noktası bunu basitleştirir — her yeni bağlantı otomatik olarak taze bir IP alır.
Performans ipuçları
Tarayıcı otomasyonu kaynak yoğundur. Verimi en üst düzeye çıkarmak için: headless modu kullanın, gerekmediğinde görsel ve CSS yüklemesini kapatın, sayfa yükleme zaman aşımları belirleyin ve IP çeşitliliği için farklı GProxy uç noktalarıyla birden fazla tarayıcı örneğini paralel çalıştırın.
Kullanım senaryoları
[
{
"
T
I
T
L
E
"
:
"
J
A
V
A
S
C
R
I
P
T
A
Ğ
I
R
L
I
K
L
I
S
C
R
A
P
I
N
G
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
T
A
M
T
A
R
A
Y
I
C
I
R
E
N
D
E
R
'
I
G
E
R
E
K
T
I
R
E
N
S
P
A
'
L
A
R
I
V
E
D
I
N
A
M
I
K
S
I
T
E
L
E
R
I
K
A
Z
I
Y
I
N
.
"
}
,
{
"
T
I
T
L
E
"
:
"
F
O
R
M
O
T
O
M
A
S
Y
O
N
U
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
P
R
O
X
Y
Ü
Z
E
R
I
N
D
E
N
Ç
A
L
I
Ş
A
N
T
A
R
A
Y
I
C
I
L
A
R
L
A
F
O
R
M
G
Ö
N
D
E
R
I
M
L
E
R
I
N
I
V
E
Ç
O
K
A
D
I
M
L
I
A
K
I
Ş
L
A
R
I
O
T
O
M
A
T
I
K
L
E
Ş
T
I
R
I
N
.
"
}
,
{
"
T
I
T
L
E
"
:
"
G
Ö
R
S
E
L
T
E
S
T
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
H
E
D
E
F
L
E
N
M
I
Ş
R
E
S
I
D
E
N
T
I
A
L
P
R
O
X
Y
'
L
E
R
L
E
F
A
R
K
L
I
C
O
Ğ
R
A
F
I
K
O
N
U
M
L
A
R
D
A
N
E
K
R
A
N
G
Ö
R
Ü
N
T
Ü
S
Ü
A
L
I
N
.
"
}
,
{
"
T
I
T
L
E
"
:
"
H
E
S
A
P
Y
Ö
N
E
T
I
M
I
"
,
"
D
E
S
C
R
I
P
T
I
O
N
"
:
"
G
Ü
V
E
N
L
I
O
T
O
M
A
S
Y
O
N
I
Ç
I
N
H
E
R
O
T
U
R
U
M
A
Ö
Z
E
L
I
P
'
L
E
R
L
E
B
I
R
D
E
N
F
A
Z
L
A
H
E
S
A
B
I
Y
Ö
N
E
T
I
N
.
"
}
]
FAQ
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Başlamaya hazır mısınız?
GProxy ile dakikalar içinde başlayın — residential proxy'ler $0.85/GB'den, IPv6 $0.03/proxy'den, kullandıkça öde.
