אפשרות 1: רשימת כתובות IP (מומלץ לשרתים)#
הגישה ללא סיסמה עובדת רק לאחר אישור הכניסה לשירות המוקצה. יש לאשר את אפשרויות המדינה וההפעלה בנפרד; רשימת ההיתר של מקור-IP אינה שולחת פרמטרים של כתובות. רשימת לבנים
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
opts = Options()
opts.add_argument("--proxy-server=http://res.proxy-cyber.com:9000")
opts.add_argument("--headless=new")
driver = webdriver.Chrome(options=opts)
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
driver.quit()אפשרות 2: אימות BiDi WebDriver #
הדוגמה משתמשת ב- WebDriver BiDi API המותאם ל-WebDriver של Selenium, עם enable_bidi ו- network.add_auth_handler. בדוק אתגר HTTP פרוקסי עם הדפדפן המותקן והנהג לפני השימוש בו בעבודה. המטפל אינו מוגבל למארח אחד, לכן השתמש בהפעלה מבודדת של דפדפן ללא הנחיות לא רצויות. אם אימות פרוקסי אינו נתמך בשילוב הגרסה שלך, השתמש ברשימת היתרי IP פעילה.
import os
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.enable_bidi = True
options.add_argument("--proxy-server=" + os.environ["PROXY_SERVER"])
with webdriver.Chrome(options=options) as driver:
handler = driver.network.add_auth_handler(
os.environ["PROXY_USER"], os.environ["PROXY_PASSWORD"]
)
try:
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
finally:
driver.network.remove_auth_handler(handler)פיירפוקס#
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
opts = Options()
opts.set_preference("network.proxy.type", 1)
opts.set_preference("network.proxy.http", "res.proxy-cyber.com")
opts.set_preference("network.proxy.http_port", 9000)
opts.set_preference("network.proxy.ssl", "res.proxy-cyber.com")
opts.set_preference("network.proxy.ssl_port", 9000)
opts.set_preference("media.peerconnection.enabled", False) # no WebRTC leak
driver = webdriver.Firefox(options=opts) # whitelisted server, no promptכללים מעשיים#
- השתמש במזהה הפעלה נפרד עבור כל זרימת עבודה עצמאית, שבה השער שהוקצה תומך בו. אשר את הפרמטרים המותרים של משך ומיקום בפרטי החיבור שלך. התקן מגורים יכול להתנתק לפני משך הזמן המבוקש; הפעלה דביקה אינה ערובה לאותו IP במשך ימים. עבור כתובת קבועה, השווה מוצר סטטי ייעודי.
- שימוש
--headless=newב-Chrome; למצב חסר הראש הישן יש טביעת אצבע ייחודית. - מזהה הפעלה נפרדת את העדפות ניתוב הבידוד, לא את קובצי ה-Cookie של הדפדפן או את מצב היישום. התחל עם מספר קטן של עובדים, למדוד שגיאות ותעבורה, ולהגדיל בהדרגה בתוך המגבלות שאושרו להזמנה שלך ואת היעד. עיר צרה או בחירת ספקים יכולה להפחית את קיבולת זמינה.
שאלות שאנשים שואלים#
מדוע Chrome מציג שורת כניסה של פרוקסי עם סלניום?
השתמש ברשימת ההיתר של מקור-IP פעילה עבור שרת קבוע, או בדוק את מנהל ההתקן הנוכחי של Selenium עם הדפדפן המותקן. אל תסמוך על התקנת סלניום תיל בארכיון לשילוב חדש.