91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中selenium指的是什么

發布時間:2020-08-01 09:41:06 來源:億速云 閱讀:1210 作者:清晨 欄目:編程語言

這篇文章將為大家詳細講解有關python中selenium指的是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

一、selenium簡介

1、什么是selenium

selenium最初是一個自動化測試工具,而爬蟲中使用它主要是為了解決requests無法執行javaScript代碼的問題。

2、selenium的用途

(1)selenium可以驅動瀏覽器自動執行自定義好的邏輯代碼,也就是可以通過代碼完全模擬成人類使用瀏覽器自動訪問目標站點并操作,那我們也可以拿它來做爬蟲。

(2)selenium本質上是通過驅動瀏覽器,完全模擬瀏覽器的操作,比如跳轉、輸入、點擊、下拉等...進而拿到網頁渲染之后的結果,可支持多種瀏覽器

3、selenium是優缺點

(1)優點

優點就是可以幫我們避開一系列復雜的通信流程,例如在我們之前學習的requests模塊,那么requests模塊在模擬請求的時候是不是需要把素有的通信流程都分析完成后才能通過請求,然后返回響應。假如目標站點有一系列復雜的通信流程,例如的登錄時的滑動驗證等...那么你使用requests模塊的時候是不是就特別麻煩了。不過你也不需要擔心,因為網站的反爬策略越高,那么用戶的體驗效果就越差,所以網站都需要在用戶的淫威之下降低安全策略。

再看一點requests請求庫能不能執行js?是不是不能呀!那么如果你的網站需要發送ajax請求,異步獲取數據渲染到頁面上,是不是就需要使用js發送請求了。那瀏覽器的特點是什么?是不是可以直接訪問目標站點,然后獲取對方的數據,從而渲染到頁面上。那這些就是使用selenium的好處!

(2)缺點

使用selenium本質上是驅動瀏覽器對目標站點發送請求,那瀏覽器在訪問目標站點的時候,是不是都需要把靜態資源都加載完畢。html、css、js這些文件是不是都要等待它加載完成。是不是速度特別慢。那用它的壞處就是效率極低!所以我們一般用它來做登錄驗證。

二、selenium的安裝

1、下載selenium模塊:

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple selenium

或者在pycharm中下載

2、安裝瀏覽器驅動

(1)Google瀏覽器驅動:https://sites.google.com/a/chromium.org/chromedriver/downloads

注:把下載好的chromedriver.exe放到python安裝路徑的scripts目錄中即可。

(2)firefox瀏覽器驅動:

selenium3默認支持的webdriver是Firfox,而Firefox需要安裝geckodriver

下載鏈接:https://github.com/mozilla/geckodriver/releases

三、selenium的基本使用

from selenium import webdriver  # 用來驅動瀏覽器的
from selenium.webdriver import ActionChains  # 破解滑動驗證碼的時候用的 可以拖動圖片
from selenium.webdriver.common.by import By  # 按照什么方式查找,By.ID,By.CSS_SELECTOR
from selenium.webdriver.common.keys import Keys  # 鍵盤按鍵操作
from selenium.webdriver.support import expected_conditions as EC  # 和下面WebDriverWait一起用的
from selenium.webdriver.support.wait import WebDriverWait  # 等待頁面加載某些元素
import time
driver=webdriver.Chrome()
try:
    wait=WebDriverWait(driver,10)
    #1、訪問百度
    driver.get('https://www.baidu.com/')
    #2、查找輸入框
    #     input_tag = wait.until(
    #         # 調用EC的presence_of_element_located()
    #         EC.presence_of_element_located(
    #             # 此處可以寫一個元組
    #             # 參數1: 查找屬性的方式
    #             # 參數2: 屬性的名字
    #             (By.ID, "kw")
    #         )
    #     )
    input_tag=wait.until(EC.presence_of_element_located((By.ID,"kw")))
    #3、在搜索框在輸入要搜索的內容
    input_tag.send_keys('秦時明月')
    # 4、按鍵盤回車鍵
    input_tag.send_keys(Keys.ENTER)
    time.sleep(3)
finally:
    driver.close()

關于python中selenium指的是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安溪县| 景东| 潞西市| 海林市| 泰来县| 忻州市| 桓仁| 商丘市| 泗水县| 根河市| 子长县| 铁力市| 灵川县| 隆林| 克什克腾旗| 会东县| 藁城市| 遂昌县| 松潘县| 贵定县| 务川| 台南市| 教育| 府谷县| 礼泉县| 衡山县| 多伦县| 玛多县| 阳信县| 湖州市| 静海县| 祁东县| 五家渠市| 平安县| 黄山市| 宁晋县| 株洲市| 琼中| 武义县| 新安县| 阿坝县|