Python趣味實戰之手把手教你實現舉牌小人生成器

Selenium庫的安裝與簡單使用

 1. 安裝selenium庫

pip install selenium

結果如下:

在這裡插入圖片描述

2. chromedriver驅動的配置

如果你想要驅動谷歌瀏覽器,自動打開瀏覽器,必須匹配chromedriver驅動,否則會報錯。

配置chromedriver驅動,一定要註意 “驅動” 和 “谷歌瀏覽器” 版本一定是要相匹配,否則不能使用。

① 檢查谷歌瀏覽器的版本

這裡首先提供一個詳細的地址供大傢查看:
https://jingyan.baidu.com/article/95c9d20d74a1e8ec4f756149.html
點擊“右上角三個點” –> 點擊“設置” –> 點擊 “關於chrome”,出現如下界面。

在這裡插入圖片描述

② 下載chromedriver驅動

這裡再次提供一個詳細的地址,供大傢選擇各種版本驅動程序:
http://chromedriver.storage.googleapis.com/index.html
從上面的圖中可以看出,谷歌瀏覽器的版本是【81.0.4044.138】,這裡我們選擇的對應版本的驅動,如下圖所示。

在這裡插入圖片描述

點進該文件後,可以根據我們的操作系統,選擇對應的驅動。

在這裡插入圖片描述

③ chromedriver驅動的配置

解壓上述下載好的文件,並將解壓後我們得到的chromedriver.exe文件,需要放到python的安裝路徑下(和python.exe放在一起)。
首先,你可以查看你的python解釋器安裝在哪裡!

在這裡插入圖片描述

然後,將chromedriver.exe放置和python.exe在一起

在這裡插入圖片描述

3. 檢驗selenium是否可用

使用如下兩行代碼,如果谷歌瀏覽器成功被驅動打開,證明上述安裝和配置沒問題。

from selenium import webdriver
browser = webdriver.Chrome()

結果如下:

在這裡插入圖片描述

如果出現上圖,則證明你的chromedriver驅動配置成功。接下來,你可以盡情享用庫瞭。

selenium庫制作一個“舉牌小人”

這裡給你提供一個網址:
http://www.atoolbox.net/Tool.php?Id=789

我們就是利用這個網址,基於selenium庫,為大傢制作一個好玩兒的 “舉牌小人”。

1. 分析網頁

首先,我們打開上述網址(如圖所示),操作步驟我為大傢簡述瞭一下。

在這裡插入圖片描述

當然,這三個步驟都是認為操作瀏覽器得到的效果。

此時,我們就是要使用庫,模擬人為操作瀏覽器,實現這三步操作。

  • Ⅰ 定位“輸入框”;
  • Ⅱ 定位“生成”這二字的節點;
  • Ⅲ 定位“下載”這二字的節點;

點擊F12,打開開發者工具,我們先來定位“輸入框”,可以看到這裡的id屬性是up-content

在這裡插入圖片描述

再來定位“生成”這二字的節點,可以看到這裡的id屬性是preview

在這裡插入圖片描述

最後再來定位“下載”這二字的節點,可以看到這裡的id屬性是download

在這裡插入圖片描述

在selenium中,有如下多種方法,來定位節點。這個其實就是定位方法,沒必要多講述。由於我這裡是通過id屬性,定位對應節點,因此使用的方法就是find_element_by_id

在這裡插入圖片描述

這裡我為大傢上代碼瞭,代碼中有詳細的註釋,整個操作過程就代碼中的①②③④這幾步。

from selenium import webdriver
import time

# 定義一個input輸入函數,這就是待輸入的關鍵詞;
keyword = input("請輸入關鍵詞:")

# 創建瀏覽器對象,該操作會自動幫我們打開Google瀏覽器窗口;
browser = webdriver.Chrome()

# 調用瀏覽器對象,向服務器發送請求。該操作會打開Google瀏覽器,並跳轉到 指定網址網頁;
browser.get("http://www.atoolbox.net/Tool.php?Id=789")

# 最大化窗口(寫不寫無所謂,你可以嘗試一下效果)
browser.maximize_window()

# ① 定位“輸入框”,定位後直接調用send_keys()方法,往該輸入框輸入關鍵字;
browser.find_element_by_id("up-content").send_keys(keyword)

# ② 再定位“生成”節點,然後調用click()方法,模擬認為點擊這個按鈕;
browser.find_element_by_id('preview').click()

# ③ 此時,等待個幾秒鐘(>=5),再點擊下載,不要省略這一步【為瞭讓瀏覽器飯響應完全】;
time.sleep(3)

# ④ 最後再定位“下載”按鈕,同樣使用click()方法,模擬認為點擊這個按鈕;
browser.find_element_by_id('download').click()

結果如下:

在這裡插入圖片描述

這個圖片的下載位置,就是谷歌瀏覽器的默認下載地址,我們可以修改到指定文件夾,那麼所下載的圖片就都在指定位置瞭。

在這裡插入圖片描述

到此這篇關於Python趣味實戰之手把手教你實現舉牌小人生成器的文章就介紹到這瞭,更多相關Python實現舉牌小人生成器內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: