溫馨提示×

溫馨提示×

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

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

如何利用Python實現(xiàn)網(wǎng)站自動簽到

發(fā)布時間:2022-08-04 10:21:53 來源:億速云 閱讀:183 作者:iii 欄目:開發(fā)技術

這篇文章主要講解了“如何利用Python實現(xiàn)網(wǎng)站自動簽到”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何利用Python實現(xiàn)網(wǎng)站自動簽到”吧!

準備工作

首先我們需要先安裝Selenium,從而實現(xiàn)后續(xù)自動化操控瀏覽器。我們可以利用它來模擬鼠標按鍵,跟按鍵精靈很類似。

pip install selenium

待其安裝完成后,準備另一個必需工具。

selenium可以操控多款瀏覽器,包括谷歌,火狐等,這里小五使用的是谷歌瀏覽器。

這里需要知道瀏覽器的版本信息,只需打開“關于Chrome”,就可以看到了。

如何利用Python實現(xiàn)網(wǎng)站自動簽到

如上圖所示,我的瀏覽器版本是89.0.4389.114。然后我們需要前往(http://chromedriver.storage.googleapis.com/index.html)找到與瀏覽器相匹配的版本,沒有一模一樣的選擇最近的版本也可以。

如何利用Python實現(xiàn)網(wǎng)站自動簽到

點擊進去選擇對應的系統(tǒng)版本,下載后將chromedriver.exe解壓出來,最后將其放到與python.exe文件相同的路徑下。

如果你是用的anaconda就放在下面目錄下:

C:\Users\Administrator\anaconda3

具體位置如下圖所示

如何利用Python實現(xiàn)網(wǎng)站自動簽到

下面我們就可以正式用python自動簽到了。

代碼及講解

首先打開我要登錄的網(wǎng)站,具體域名就不分享給大家了。

先導入selenium庫,這里只需使用selenium中的webdriver模塊,運行

from selenium import webdriver

打開下載的瀏覽器驅(qū)動,設置隱式等待時

wd=webdriver.Chrome()
wd.implicitly_wait(1)

執(zhí)行代碼的時候會自行去尋找chromedriver.exe(在python目錄下尋找)。如果我們前面沒有把它放在固定的路徑下,就需要在這里指定chromedriver.exe路徑。

打開登錄網(wǎng)頁

wd.get('待登錄網(wǎng)站URL')

如何利用Python實現(xiàn)網(wǎng)站自動簽到

如上圖所示,模擬瀏覽器已經(jīng)打開了網(wǎng)站的登錄界面。這個時候我們需要定位到輸入框、密碼框以及登錄按鈕等。

這里不用擔心,Selenium提供了很多種定位DOM元素的方法,各有各的特點和優(yōu)勢。今天就主要使用 by_xpath() 這個方法來定位元素,這個方法比較靈活方便,大部分屬性都可以通過它來定位。

【檢查】→【進入開發(fā)者模式】點擊左上角的圖標,再點擊你要找的對象,即可得到該對象的信息。點位該對象后,右鍵copy它的XPath!

如何利用Python實現(xiàn)網(wǎng)站自動簽到

input = wd.find_element_by_xpath('//*[@id="email"]')
input.send_keys('kxpython@163.com')

同理,我們可以定位到密碼框,再send_keys輸入密碼

password = wd.find_element_by_xpath('//*[@id="password"]')
password.send_keys('kxpython')

如何利用Python實現(xiàn)網(wǎng)站自動簽到

至于需要點擊的對象,可以使用click()來實現(xiàn)模擬點擊的功能。

點擊登錄

button_login = wd.find_element_by_xpath('//*[@id="app"]/section/div/div/div/div[2]/form/div/div[5]/button')
button_login.click()

點擊跳過彈窗

一般登錄后會有個小彈窗,關閉即可。

如何利用Python實現(xiàn)網(wǎng)站自動簽到

wd.find_element_by_xpath('//*[@id="popup-ann-modal"]/div/div/div[3]/button').click()

嘗試簽到

try:
    wd.find_element_by_xpath('//*[@id="checkin-div"]/a').click()
except:
    print("已簽到")

最后要記得關閉瀏覽器窗口

wd.quit()

注:close()關閉當前窗口,wd.quit()則是關閉所有窗口。

點擊運行上面的全部代碼,即可實現(xiàn)python對網(wǎng)站的自動簽到。我們還可以將該python腳本設置為定時任務,這樣就不用每天手動去簽到啦!

感謝各位的閱讀,以上就是“如何利用Python實現(xiàn)網(wǎng)站自動簽到”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對如何利用Python實現(xiàn)網(wǎng)站自動簽到這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節(jié)

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

AI