真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Python爬蟲之基于selenium實(shí)現(xiàn)12306模擬登錄

參考:https://blog.csdn.net/m0_/article/details/

解決了個(gè)主要問(wèn)題,滑塊驗(yàn)證錯(cuò)誤。

文件由:vscode 編寫,瀏覽器驅(qū)動(dòng)為 EDGE.
驅(qū)動(dòng)下載地址:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)渾源免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千余家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

# !/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author: Aixiu
# @Time  : 2022/10/17 17:48:24

from selenium import webdriver
from selenium.webdriver.edge.service import Service
# 無(wú)頭Edge瀏覽器庫(kù)及規(guī)避檢測(cè)
from selenium.webdriver.edge.options import Options
# 導(dǎo)入動(dòng)作鏈對(duì)應(yīng)的類
from selenium.webdriver import ActionChains
import time

# 創(chuàng)建一個(gè)參數(shù)對(duì)象,用來(lái)控制 Edge以無(wú)界面模式打開
edge_options = Options()
# 反檢測(cè)設(shè)置 #
# 規(guī)避被檢測(cè)到的風(fēng)險(xiǎn)
# 開啟開發(fā)者模式
# option = EdgeOptions()
edge_options.add_experimental_option('excludeSwitches', ['enable-automation'])
# 去掉:瀏覽器上方有“Chrome正受到自動(dòng)測(cè)試軟件的控制
edge_options.add_experimental_option("detach", True)
# 禁用啟用Blink運(yùn)行時(shí)的功能
edge_options.add_argument('--disable-blink-features=AutomationControlled')

# 將參數(shù)傳給瀏覽器 (options=edge_options)
bro = webdriver.Edge(service=Service('./msedgedriver.exe'), options=edge_options)
bro.get('https://kyfw..cn/otn/resources/login.html')

# 解決特征識(shí)別, 用來(lái)解決滑塊出錯(cuò),驗(yàn)證問(wèn)題
script = 'Object.defineProperty(navigator, "webdriver", {get: () => false,});'
bro.execute_script(script)

# 根據(jù)id獲取用戶賬號(hào)輸入框、密碼輸入框,并輸入賬號(hào)密碼
time.sleep(2)
username_tag = bro.find_element(by='id', value='J-userName').send_keys('改為你的用戶名')
time.sleep(2)
password_tag = bro.find_element(by='id', value='J-password').send_keys('改為你的密碼')

# 根據(jù)id獲取登錄按鈕并點(diǎn)擊
login_btn = bro.find_element(by='id', value='J-login').click()

# 盡量休眠長(zhǎng)一點(diǎn),不然,代碼難以定位到滑塊
time.sleep(2)
span = bro.find_element(by='id', value='nc_1_n1z')

# 定義動(dòng)作鏈,點(diǎn)擊并拖拽
aco = ActionChains(bro)

# 點(diǎn)擊并長(zhǎng)按
aco.click_and_hold(span)

#perform()立即執(zhí)行動(dòng)作鏈操作

for i in range(10):
    aco.move_by_offset(36,0).perform()
    time.sleep(0.3)
    
# 釋放動(dòng)作鏈
aco.release()
time.sleep(2)

# 點(diǎn)擊登錄后的彈窗 確定 按鈕
ok_btn = bro.find_element(by='class name', value='ok').click()

time.sleep(5)
bro.quit()

當(dāng)前名稱:Python爬蟲之基于selenium實(shí)現(xiàn)12306模擬登錄
標(biāo)題路徑:http://weahome.cn/article/dsogcsd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部