首頁 > 後端開發 > Python教學 > 使用 Python 自動化 Web 操作時如何解決 Selenium 代理錯誤?

使用 Python 自動化 Web 操作時如何解決 Selenium 代理錯誤?

Mary-Kate Olsen
發布: 2024-10-19 19:27:02
原創
824 人瀏覽過

How to Resolve Selenium Proxy Errors When Automating Web Actions Using Python?

在 Python 中使用代理程式執行 Selenium Webdriver:排除代理錯誤

使用 Selenium Webdriver 自動化 Web 操作通常需要使用代理伺服器。但是,將代理程式整合到 Selenium 腳本中可能會帶來挑戰。

一個常見問題是當 Selenium 瀏覽器無法存取指定 URL 或執行任何操作時收到錯誤訊息。研究代碼可能會發現代理設定的實作不正確。

例如,此程式碼片段演示了一個基本的Selenium Webdriver 腳本,該腳本旨在導航到Google Ireland 並蒐索“selenium”:

<code class="python">from selenium import webdriver
from selenium.webdriver.common.proxy import Proxy, ProxyType

myProxy = "http://149.215.113.110:70"

proxy = Proxy({
    'proxyType': ProxyType.MANUAL,
    'httpProxy': myProxy,
    'ftpProxy': myProxy,
    'sslProxy': myProxy,
    'noProxy':''
})

driver = webdriver.Firefox(proxy=proxy)
driver.implicitly_wait(30)
driver.get("https://www.google.ie/#gs_rn=17&amp;gs_ri=psy-ab&amp;suggest=p&amp;cp=6&amp;gs_id=ix&amp;xhr=t&amp;q=selenium&amp;es_nrs=true&amp;pf=p&amp;output=search&amp;sclient=psy-ab&amp;oq=seleni&amp;gs_l=&amp;pbx=1&amp;bav=on.2,or.r_qf.&amp;bvm=bv.47883778,d.ZGU&amp;fp=7c0d9024de9ac6ab&amp;biw=592&amp;bih=665")</code>
登入後複製

但是,執行此腳本可能會導致錯誤。要解決此問題,建議採用更簡潔有效的方法:

<code class="python">from selenium import webdriver
from selenium.webdriver.common.proxy import Proxy, ProxyType

prox = Proxy()
prox.proxy_type = ProxyType.MANUAL
prox.http_proxy = "ip_addr:port"
prox.socks_proxy = "ip_addr:port"
prox.ssl_proxy = "ip_addr:port"

capabilities = webdriver.DesiredCapabilities.CHROME
prox.add_to_capabilities(capabilities)

driver = webdriver.Chrome(desired_capabilities=capabilities)</code>
登入後複製

透過使用此修訂後的方法,您應該能夠使用代理成功配置Selenium Webdriver 腳本並執行所需的Web 自動化任務.

以上是使用 Python 自動化 Web 操作時如何解決 Selenium 代理錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板