Python趣味實(shí)戰(zhàn)之手把手教你實(shí)現(xiàn)舉牌小人生成器
1. 安裝selenium庫
pip install selenium
結(jié)果如下:
2. chromedriver驅(qū)動(dòng)的配置
如果你想要驅(qū)動(dòng)谷歌瀏覽器,自動(dòng)打開瀏覽器,必須匹配chromedriver驅(qū)動(dòng),否則會(huì)報(bào)錯(cuò)。
配置chromedriver驅(qū)動(dòng),一定要注意 “驅(qū)動(dòng)” 和 “谷歌瀏覽器” 版本一定是要相匹配,否則不能使用。
① 檢查谷歌瀏覽器的版本
這里首先提供一個(gè)詳細(xì)的地址供大家查看:https://jingyan.baidu.com/article/95c9d20d74a1e8ec4f756149.html點(diǎn)擊“右上角三個(gè)點(diǎn)” --> 點(diǎn)擊“設(shè)置” --> 點(diǎn)擊 “關(guān)于chrome”,出現(xiàn)如下界面。
② 下載chromedriver驅(qū)動(dòng)
這里再次提供一個(gè)詳細(xì)的地址,供大家選擇各種版本驅(qū)動(dòng)程序:http://chromedriver.storage.googleapis.com/index.html從上面的圖中可以看出,谷歌瀏覽器的版本是【81.0.4044.138】,這里我們選擇的對(duì)應(yīng)版本的驅(qū)動(dòng),如下圖所示。
點(diǎn)進(jìn)該文件后,可以根據(jù)我們的操作系統(tǒng),選擇對(duì)應(yīng)的驅(qū)動(dòng)。
③ chromedriver驅(qū)動(dòng)的配置
解壓上述下載好的文件,并將解壓后我們得到的chromedriver.exe文件,需要放到python的安裝路徑下(和python.exe放在一起)。首先,你可以查看你的python解釋器安裝在哪里!
然后,將chromedriver.exe放置和python.exe在一起
3. 檢驗(yàn)selenium是否可用
使用如下兩行代碼,如果谷歌瀏覽器成功被驅(qū)動(dòng)打開,證明上述安裝和配置沒問題。
from selenium import webdriverbrowser = webdriver.Chrome()
結(jié)果如下:
如果出現(xiàn)上圖,則證明你的chromedriver驅(qū)動(dòng)配置成功。接下來,你可以盡情享用庫了。
selenium庫制作一個(gè)“舉牌小人”這里給你提供一個(gè)網(wǎng)址:http://www.atoolbox.net/Tool.php?Id=789
我們就是利用這個(gè)網(wǎng)址,基于selenium庫,為大家制作一個(gè)好玩兒的 “舉牌小人”。
1. 分析網(wǎng)頁
首先,我們打開上述網(wǎng)址(如圖所示),操作步驟我為大家簡(jiǎn)述了一下。
當(dāng)然,這三個(gè)步驟都是認(rèn)為操作瀏覽器得到的效果。
此時(shí),我們就是要使用庫,模擬人為操作瀏覽器,實(shí)現(xiàn)這三步操作。
Ⅰ 定位“輸入框”; Ⅱ 定位“生成”這二字的節(jié)點(diǎn); Ⅲ 定位“下載”這二字的節(jié)點(diǎn);點(diǎn)擊F12,打開開發(fā)者工具,我們先來定位“輸入框”,可以看到這里的id屬性是up-content。
再來定位“生成”這二字的節(jié)點(diǎn),可以看到這里的id屬性是preview。
最后再來定位“下載”這二字的節(jié)點(diǎn),可以看到這里的id屬性是download。
在selenium中,有如下多種方法,來定位節(jié)點(diǎn)。這個(gè)其實(shí)就是定位方法,沒必要多講述。由于我這里是通過id屬性,定位對(duì)應(yīng)節(jié)點(diǎn),因此使用的方法就是find_element_by_id。
這里我為大家上代碼了,代碼中有詳細(xì)的注釋,整個(gè)操作過程就代碼中的①②③④這幾步。
from selenium import webdriverimport time# 定義一個(gè)input輸入函數(shù),這就是待輸入的關(guān)鍵詞;keyword = input('請(qǐng)輸入關(guān)鍵詞:')# 創(chuàng)建瀏覽器對(duì)象,該操作會(huì)自動(dòng)幫我們打開Google瀏覽器窗口;browser = webdriver.Chrome()# 調(diào)用瀏覽器對(duì)象,向服務(wù)器發(fā)送請(qǐng)求。該操作會(huì)打開Google瀏覽器,并跳轉(zhuǎn)到 指定網(wǎng)址網(wǎng)頁;browser.get('http://www.atoolbox.net/Tool.php?Id=789')# 最大化窗口(寫不寫無所謂,你可以嘗試一下效果)browser.maximize_window()# ① 定位“輸入框”,定位后直接調(diào)用send_keys()方法,往該輸入框輸入關(guān)鍵字;browser.find_element_by_id('up-content').send_keys(keyword)# ② 再定位“生成”節(jié)點(diǎn),然后調(diào)用click()方法,模擬認(rèn)為點(diǎn)擊這個(gè)按鈕;browser.find_element_by_id(’preview’).click()# ③ 此時(shí),等待個(gè)幾秒鐘(>=5),再點(diǎn)擊下載,不要省略這一步【為了讓瀏覽器飯響應(yīng)完全】;time.sleep(3)# ④ 最后再定位“下載”按鈕,同樣使用click()方法,模擬認(rèn)為點(diǎn)擊這個(gè)按鈕;browser.find_element_by_id(’download’).click()
結(jié)果如下:
這個(gè)圖片的下載位置,就是谷歌瀏覽器的默認(rèn)下載地址,我們可以修改到指定文件夾,那么所下載的圖片就都在指定位置了。
到此這篇關(guān)于Python趣味實(shí)戰(zhàn)之手把手教你實(shí)現(xiàn)舉牌小人生成器的文章就介紹到這了,更多相關(guān)Python實(shí)現(xiàn)舉牌小人生成器內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Springboot 全局日期格式化處理的實(shí)現(xiàn)2. vue實(shí)現(xiàn)web在線聊天功能3. Django使用HTTP協(xié)議向服務(wù)器傳參方式小結(jié)4. JAMon(Java Application Monitor)備忘記5. SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)6. docker容器調(diào)用yum報(bào)錯(cuò)的解決辦法7. Java使用Tesseract-Ocr識(shí)別數(shù)字8. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問題9. HTML基本語法和語義寫法規(guī)則與實(shí)例10. 前端獲取http狀態(tài)碼400的返回值實(shí)例
