Selenium Python (4). Cara Menggunakan Selenium dengan Python dan Proksi
Temui kuasa Selenium dengan Python dan manfaatkan proksi untuk pengikisan web dan automasi yang cekap. Tingkatkan pengumpulan data anda dengan pelayan proksi yang mampu milik FineProxy.
Dalam artikel ini 8 bahagian
Apabila bekerja dengan web scraping atau automasi menggunakan Selenium dan Python, menggunakan proxy boleh menjadi penting untuk mengelakkan larangan IP dan meningkatkan kecekapan pengumpulan data anda. Artikel ini akan membimbing anda melalui proses menyediakan dan menggunakan proxy dalam Selenium dengan Python.
Apakah Selenium dan Mengapa Menggunakan Proksi?#
Selenium adalah alat yang kuat untuk mengotomatiskan browser web, sering digunakan untuk web scraping dan pengujian aplikasi web. Proksi adalah server perantara yang memisahkan pengguna akhir dari situs web yang mereka jelajahi, membantu menyembunyikan alamat IP dan mengelola beban permintaan.
Menyediakan Selenium dengan Proksi#
Sebelum menyelam ke dalam kod, pastikan anda memasang alat yang diperlukan:
- Python
- Selenium (
pip install selenium) - Driver browser web (misalnya, ChromeDriver untuk Chrome atau GeckoDriver untuk Firefox)
Panduan Langkah demi Langkah untuk Menggunakan Proksi di Selenium#
1. Menyiapkan Chrome dengan Proksi#
Untuk mengkonfigurasi Chrome menggunakan pelayan proksi, anda perlu menyediakan keupayaan yang diingini dalam Selenium.
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()
Proksi dengan Pengesahan#
Jika proksi anda memerlukan pengesahan, anda boleh menggunakan Proxy kelas dari selenium.webdriver.common.proxy.
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()
Menggunakan Firefox dengan Proksi#
Untuk mengkonfigurasi Firefox untuk menggunakan proxy, ubah tetapan profil Firefox.
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()
Menyelesaikan Masalah Isu Biasa#
Pengesahan Proxy: Jika proxy anda memerlukan log masuk, pastikan kredensial ditetapkan dengan betul.
Penyekatan IP: Sesetengah laman web mungkin masih menyekat proxy. Gunakan proxy kediaman atau proxy berputar untuk mengurangkan isu ini.
Ringkasan#
Menggunakan proxy dengan Selenium dan Python boleh membantu anda memintasi sekatan IP dan meningkatkan projek web scraping anda. Sama ada menggunakan Chrome atau Firefox, menyediakan proxy melibatkan mengkonfigurasi pilihan browser dan keupayaan untuk merutekan lalu lintas melalui pelayan proxy.
| Pelayar | Kaedah Persediaan | Pengesahan | Petikan Kod Tersedia |
|---|---|---|---|
| Chrome | ChromeOptions | Ya | Ya |
| Firefox | FirefoxProfile | Ya | Ya |
Dengan mengikuti langkah-langkah ini, anda boleh memastikan aktiviti scraping anda tetap tanpa gangguan dan cekap. Jika anda mempunyai sebarang soalan atau idea untuk tutorial masa hadapan, jangan ragu untuk meninggalkan ulasan!