Rotasi IP Proxy dengan Selenium

By | February 11, 2024
1,542 Views

Selenium merupakan alat yang sangat berguna ketika kita akan melakukan membuat bot yang secara alami dikenali oleh server/host target. Sebenarnya ada banyak cara kita melakukan scraping seperti menggunakan library request, mechanize, namun alat tersebut seringkali dikenali sebagai bot walaupun sudah mengubah user agent nya.

Rotasi IP Address dengan Selenium merupakan cara termudah dan sekaligus aman untuk dilakukan, saya sangat sarankan untuk menggunakan webdriver geckodriver daripada chrome, Kalian bisa install dan mengikuti langakah-langkah install selenium Cara Install Selenium dan GeckoDriver di Mac OS M1 serta Setting Proxy

OS yang digunakan

Untuk saat ini, saya lebih suka menggunakan ubuntu dengan versi sebagai berikut. Bisa kalian pilih OS Ubuntu LTS. OS Ubuntu setelah saya bandingkan dengan OS windows ternyata lebih baik dan efisien untuk menjalakan beragam aplikasi serta ketahanan baterai laptop lebih lama mengingat tidak banyak menjalankan beragam service.

                 yyyyy- -yyyyyy+      OS: Ubuntu 23.10 mantic
              ://+//////-yyyyyyo      Kernel: x86_64 Linux 6.5.0-15-generic
          .++ .:/++++++/-.+sss/`      Uptime: 14h 26m
        .:++o:  /++++++++/:--:/-      Packages: 2469
       o:+o+:++.`..```.-/oo+++++/     Shell: bash 5.2.15
      .:+o:+o/.          `+sssoo+/    Resolution: 1920x1080
 .++/+:+oo+o:`             /sssooo.   WM: Mutter
/+++//+:`oo+o               /::--:.   WM Theme: Adwaita
\+/+o+++`o++o               ++////.   GTK Theme: Yaru [GTK3]
 .++.o+++oo+:`             /dddhhh.   Disk: 135G / 231G (60%)
      .+.o+oo:.          `oddhhhh+    CPU: AMD Ryzen 3 3250U with Radeon Graphics @ 4x 2.6GHz
       \+.++o+o``-````.:ohdhhhhh+     GPU: AMD/ATI Picasso/Raven 2 [Radeon Vega Series / Radeon Vega Mobile Series]
        `:o+++ `ohhhhhhhhyo++os:      RAM: 6916MiB / 9811MiB
          .o:`.syhhhhhhh/.oo++o`     
              /osyyyyyyo++ooo+++/    
                  ````` +oo+++o\:    
                         `oo++.

Gecko Driver

Adapun untuku geckodriver yaitu dengan lokasi path di /snap/bin/geckodriver, saya telah menggunakan chrome akan tetapi kurang OK

geckodriver 0.33.0 ( 2024-02-05)

Webdriver selenium

Serta menggunakan webdriver selenium terbaru yaitu. Untuk hal ini kalian wajib mengerti karena diluarans sana masih banyak tutorial yang menggunakan versi 3 padahal beberapa function sangat berbeda

webdriver.__version__
'4.11.2'

Scraping dengan Rotasi IP Proxy di selenium

Rotasi IP Proxy dengan Selenium selain itu bisa menggunakan jaringan TOR lho. Kita akan import kebutuhan library yaitu

import random
import time
import os
from selenium import webdriver
from datetime import date
from selenium.webdriver.common.by import By
from selenium.webdriver.common.proxy import Proxy,ProxyType
from selenium.webdriver.firefox.options import Options
from selenium.webdriver.firefox.service import Service

Selanjutnya kita akan membuat function untuk mengubah proxy dan mengecek lokasi IP nya

def login(ip,port):
    options = Options()
    options.set_preference("network.proxy.type", 1)
    options.set_preference("network.proxy.http",ip)
    options.set_preference("network.proxy.http_port",int(port))

    service = Service(executable_path='/snap/bin/geckodriver')
    
    url_master = "http://checkip.amazonaws.com"
    driver = webdriver.Firefox(options = options, service=service)
    driver.get(url_master)
    return driver

misalkan kita akan menggunakan proxy dan port berikut

driver = login("91.65.102.60","80")

Untuk merayapi isi website, kalian bisa menggunakan

from bs4 import BeautifulSoup
source = driver.page_source
soup = BeautifulSoup(source)
#silahkan untuk extract data sesuai keinginan

Rotasi IP Proxy dengan Selenium

Tentu untuk mendapatkan IP Proxy yang berkualitas kita membutuhkan layanan premium, tapi kalian bisa kok mendapatkan yang gratisan yaitu Rotasi IP Address dengan Free Proxy List, silahkan untuk dipelajari.

See also  instagram4j untuk login Instagram menggunakan Java API

Setelah mendapatkan IP Proxy, kalian bisa cek kualitasnya menggunakan script yang ada di Rotasi IP Address dengan Proxy dan Jaringan TOR