Cara Menggunakan Proxy dari ProxyScrape dengan Selenium di Linux untuk Web Scraping (Panduan Pemula)
Panduan langkah demi langkah yang ramah pemula untuk mengonfigurasi proxy residensial, datacenter, atau mobile ProxyScrape di Selenium pada Linux. Mencakup pengaturan HTTP dan SOCKS5, solusi autentikasi, dan rotasi dasar untuk web scraping.
Ikhtisar
Jika Anda pernah mencari "proxy scape," "proxyscaper," atau "proxyscape," kemungkinan Anda sedang mencari ProxyScrape. Panduan ini menggunakan ejaan yang benar. ProxyScrape menyediakan proxy residensial, datacenter, dan mobile dengan dukungan HTTP dan SOCKS5, kumpulan 97 juta+ IP, serta penagihan bayar sesuai pemakaian dan bulanan tetap.
Dalam tutorial pemula ini, Anda akan menyiapkan proxy ProxyScrape di Selenium pada Linux untuk mengambil halaman web. Kami akan membahas HTTP dan SOCKS5, autentikasi, dan rotasi dasar. Pada akhirnya, Anda akan memiliki skrip Selenium yang berfungsi yang mengarahkan lalu lintas melalui proxy ProxyScrape.
Prasyarat
- Akun ProxyScrape (uji coba gratis atau paket berbayar).
- Sistem Linux (diuji pada Ubuntu/Debian).
- Python 3.6 atau lebih tinggi.
- Manajer paket pip.
- Google Chrome atau Firefox terinstal.
- Keakraban dasar dengan terminal.
Langkah-langkah
-
Dapatkan kredensial proxy ProxyScrape Anda.
Masuk ke dasbor ProxyScrape Anda dan navigasikan ke jenis proxy yang ingin Anda gunakan (residensial, datacenter, atau mobile). Catat hal berikut:
- Endpoint:
host:port - Nama pengguna dan kata sandi (jika autentikasi diaktifkan)
Untuk web scraping, proxy residensial seringkali paling andal untuk menghindari blokir, sedangkan proxy datacenter lebih cepat dan lebih murah.
- Endpoint:
-
Instal Selenium dan WebDriver di Linux.
Instal paket Python Selenium:
pip install seleniumInstal ChromeDriver (untuk Chrome/Chromium):
sudo apt update sudo apt install chromium-chromedriverAtau instal GeckoDriver (untuk Firefox):
sudo apt install firefox-geckodriverPastikan driver ada di PATH Anda. Anda dapat memeriksa dengan
which chromedriver. -
Tulis skrip Selenium dasar dengan proxy HTTP ProxyScrape.
Buat file bernama
selenium_proxy.pydan tambahkan kode berikut. Ganti placeholder dengan kredensial ProxyScrape Anda.from selenium import webdriver from selenium.webdriver.chrome.options import Options PROXY = "http://username:password@host:port" # e.g., http://user123:[email protected]:8080 chrome_options = Options() chrome_options.add_argument(f'--proxy-server={PROXY}') driver = webdriver.Chrome(options=chrome_options) driver.get("https://httpbin.org/ip") print(driver.page_source) driver.quit()Jalankan skrip:
python selenium_proxy.pyAnda akan melihat respons JSON yang berisi alamat IP yang berbeda dari milik Anda. Jika menunjukkan IP asli Anda, proxy tidak berfungsi dengan benar.
-
Tangani autentikasi proxy untuk proxy HTTP.
Flag
--proxy-serverChrome tidak mendukung nama pengguna/kata sandi inline untuk proxy HTTP. Solusi termudah bagi pemula adalah memasukkan IP Anda ke daftar putih di dasbor ProxyScrape. Buka pengaturan proxy Anda dan tambahkan IP publik Anda saat ini ke daftar putih, lalu hapus nama pengguna/kata sandi dari URL proxy.Alternatifnya, gunakan pustaka
selenium-wireyang mendukung proxy terautentikasi:pip install selenium-wirefrom seleniumwire import webdriver options = { 'proxy': { 'http': 'http://username:password@host:port', 'https': 'https://username:password@host:port', } } driver = webdriver.Chrome(seleniumwire_options=options) driver.get("https://httpbin.org/ip") print(driver.page_source) driver.quit() -
Gunakan proxy SOCKS5 dengan Selenium.
ProxyScrape juga mendukung SOCKS5. Chrome dapat menggunakan SOCKS5 dengan autentikasi inline:
PROXY = "socks5://username:password@host:port" chrome_options.add_argument(f'--proxy-server={PROXY}')Perhatikan bahwa Firefox mungkin memerlukan konfigurasi tambahan untuk autentikasi SOCKS5.
-
Tambahkan rotasi proxy dasar.
Untuk rotasi sederhana, pertahankan daftar proxy dan pilih satu secara acak untuk setiap sesi browser. Proxy residensial ProxyScrape sering menyediakan endpoint berputar, tetapi Anda juga dapat memutar secara manual.
import random from selenium import webdriver from selenium.webdriver.chrome.options import Options proxies = [ "http://user:pass@host1:port", "http://user:pass@host2:port", # Add more proxies from your ProxyScrape list ] proxy = random.choice(proxies) chrome_options = Options() chrome_options.add_argument(f'--proxy-server={proxy}') driver = webdriver.Chrome(options=chrome_options) driver.get("https://httpbin.org/ip") print(driver.page_source) driver.quit()Untuk scraping produksi, pertimbangkan menggunakan layanan rotasi proxy atau pustaka seperti
selenium-wiredengan middleware kustom. -
Uji skrip scraping Anda.
Tulis scraper sederhana untuk mengambil halaman dan mengekstrak judul:
from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.common.by import By PROXY = "http://username:password@host:port" chrome_options = Options() chrome_options.add_argument(f'--proxy-server={PROXY}') driver = webdriver.Chrome(options=chrome_options) driver.get("https://example.com") print(driver.title) driver.quit()Jika Anda melihat judul halaman, proxy Anda berfungsi.
Pemecahan Masalah
chromedrivertidak ditemukan: Pastikan driver terinstal dan ada di PATH Anda. Gunakanexport PATH=$PATH:/path/to/driverjika perlu.- Koneksi proxy ditolak: Verifikasi kredensial, endpoint, dan daftar putih IP Anda. Periksa bahwa paket ProxyScrape Anda aktif.
- Popup autentikasi di Chrome: Gunakan daftar putih IP atau
selenium-wireuntuk menghindari popup. - Kecepatan lambat: Coba proxy datacenter untuk respons lebih cepat, atau kurangi jumlah sesi bersamaan.
- Kesalahan sertifikat SSL: Tambahkan
--ignore-certificate-errorske opsi Chrome untuk pengujian (tidak disarankan untuk produksi).
Ringkasan
Anda telah mempelajari cara menggunakan proxy ProxyScrape dengan Selenium di Linux untuk web scraping. Kami membahas cara mendapatkan kredensial, menginstal Selenium, mengatur proxy HTTP dan SOCKS5, menangani autentikasi, dan rotasi dasar. Ingatlah untuk menghormati ketentuan layanan situs web dan robots.txt. Untuk pengaturan yang lebih canggih, jelajahi endpoint berputar dan fitur kontrol sesi ProxyScrape.