亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

python3.7+selenium模擬淘寶登錄功能的實現

瀏覽:16日期:2022-07-24 15:01:15

在使用selenium去獲取淘寶商品信息時會遇到登錄界面

python3.7+selenium模擬淘寶登錄功能的實現

這個登錄界面處理的難度在于滑動驗證的實現,有的人使用微博登錄,避免了滑動驗證,那可不可以使用密碼登錄呢?答案是可以的

實現思路

首先導入需要的庫

from selenium import webdriverfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver import ActionChainsimport time

1. 定位登錄元素,點擊跳轉

python3.7+selenium模擬淘寶登錄功能的實現

代碼如下:

password_login = self.wait.until( EC.presence_of_element_located((By.XPATH,'//div[@class=’site-nav-sign’]//a[@class=’h’]'))) password_login.click()

這樣就可以從首頁跳轉到登錄頁面

2. 獲取用戶和密碼輸入框,并輸入信息

input_user = self.wait.until( EC.presence_of_element_located((By.XPATH,'//div[@class=’input-plain-wrap input-wrap-loginid ’]//input[@class=’fm-text’]'))) input_user.send_keys(’用戶’) input_password = self.browser.find_element_by_xpath('//div[@class=’input-plain-wrap input-wrap-password’]//input[@class=’fm-text’]') input_password.send_keys(’密碼’)

3. 獲取滑塊元素

slider = self.wait.until( EC.element_to_be_clickable( (By.XPATH, ’//div[@class='scale_text slidetounlock']//span[@class='nc-lang-cnt']’)))

4. 滑塊運動路徑的實現

distance = 260 track = [] current = 0 # mid = distance*3/13 t = 1 v= 260 if current < distance: x = v*t current = current+x track.append(round(x))

這里的260是根據框的大小計算出來的

python3.7+selenium模擬淘寶登錄功能的實現

從圖中我們可以看出來,框的大小是300*40,所以滑動距離是260

5. 按照運動路徑拖動滑塊

ActionChains(self.browser).click_and_hold(slider).perform() for i in tracks: ActionChains(self.browser).move_by_offset(xoffset=i,yoffset=0).perform() time.sleep(1) ActionChains(self.browser).release().perform()

6. 最后一步:獲取登錄按鈕,點擊登錄

button = self.wait.until( EC.element_to_be_clickable((By.XPATH,'//div[@class=’fm-btn’]//button[@type=’submit’]'))) button.click()

代碼整理

# encoding:utf-8from selenium import webdriverfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver import ActionChainsimport timeclass Taobao_login(object): def __init__(self): self.browser = webdriver.Chrome() self.browser.get(’https://www.taobao.com’) self.wait = WebDriverWait(self.browser,10) #登錄操作 def _put_info(self): #等待密碼登錄選項出現并跳轉登錄頁面 password_login = self.wait.until( EC.presence_of_element_located((By.XPATH,'//div[@class=’site-nav-sign’]//a[@class=’h’]'))) password_login.click() #登錄 input_user = self.wait.until( EC.presence_of_element_located((By.XPATH,'//div[@class=’input-plain-wrap input-wrap-loginid ’]//input[@class=’fm-text’]'))) input_user.send_keys(’用戶’) input_password = self.browser.find_element_by_xpath('//div[@class=’input-plain-wrap input-wrap-password’]//input[@class=’fm-text’]') input_password.send_keys(’密碼’) def _get_track(self): ’’’ 獲取運動軌跡 :return: 運動軌跡 ’’’ #滑動驗證 distance = 260 track = [] current = 0 # mid = distance*3/13 t = 1 v= 260 if current < distance: x = v*t current = current+x track.append(round(x)) return track def _get_slider(self): ’’’ 獲取滑塊 :return: 滑塊對象 ’’’ slider = self.wait.until( EC.element_to_be_clickable( (By.XPATH, ’//div[@class='scale_text slidetounlock']//span[@class='nc-lang-cnt']’))) return slider def _move_to_gap(self,slider,tracks): ’’’ 按照tracks拖動滑塊 :param spider: 滑塊 :param tracks: 軌跡 :return: ’’’ ActionChains(self.browser).click_and_hold(slider).perform() for i in tracks: ActionChains(self.browser).move_by_offset(xoffset=i,yoffset=0).perform() time.sleep(1) ActionChains(self.browser).release().perform() def _login(self): #點擊登錄 button = self.wait.until( EC.element_to_be_clickable((By.XPATH,'//div[@class=’fm-btn’]//button[@type=’submit’]'))) button.click() time.sleep(1) def run(self): self._put_info() time.sleep(1) # tracks = self._get_track() # slider = self._get_slider() # self._move_to_gap(slider,tracks) # time.sleep(1) # self._login()if __name__ == ’__main__’: login = Taobao_login() login.run()

總結

到此這篇關于python3.7+selenium模擬登錄淘寶的文章就介紹到這了,更多相關Python selenium模擬淘寶登陸內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: 淘寶 Python
相關文章:
主站蜘蛛池模板: 有一婷婷色 | 天天综合色网 | 亚洲色欧美 | 国产视频一二三 | 免费高清a级毛片在线播放 免费高清小黄站在线观看 免费高清不卡毛片在线看 免费高清毛片 | 一级特色黄大片 | 亚洲小视频在线观看 | 中国一级毛片免费看视频 | 麻豆国产高清精品国在线 | 麻豆va一区二区三区久久浪 | 麻豆精品永久免费视频 | 国产精品揄拍一区二区 | 欧美日韩在线视频专区免费 | 91网站桃色| 国产白拍| 女女互添下身免费视频 | 99成人在线 | 国产精品单位女同事在线 | 午夜一级影院 | 中国女人三级在线播放 | 一区二区三区视频免费观看 | 黄图视频在线观看 | 欧美性黑吊xxx | 色偷偷影院| a级亚洲片精品久久久久久久 | 毛片基地美国 | 日本视频中文字幕一区二区 | 国产免费看网站v片不遮挡 国产免费高清 | 精品乱码| 亚洲色图图片区 | 欧美人与鲁交大毛片免费 | 女同另类一区二区三区 | 国产精品久久久精品视频 | 三级a黄| 国内精品九一在线播放 | 中文字幕一区精品欧美 | 嘿嘿视频在线观看 成人 | 亚洲成熟中国女人毛茸茸 | 欧洲精品在线观看 | 免费精品视频 | 国语自产免费精品视频一区二区 |