selenium之上傳文件或圖片的操作


逛網站的時候經常會遇到需要上傳圖片的操作,這里主要來說下selenium操作上傳文件的操作。

前提條件:定位的元素必須是type 屬性是file類型。即type="file",如下圖:

詳細用法:

參考代碼:

from selenium import webdriver
import time


driver = webdriver.Chrome()


def test_open_page():
    '''打開界面'''
    driver.maximize_window()
    driver.get('http://106.233.81.250/fw/index.php?ctl=user&act=login')

def test_register(user,password):
    '''輸入用戶名密碼'''
    driver.find_element_by_css_selector('#login-email-address').send_keys(user)
    driver.find_element_by_css_selector('#login-password').send_keys(password)
    driver.find_element_by_xpath('//input[@type="submit"]').click()
    driver.implicitly_wait(30)
    driver.find_element_by_xpath('//input[@value="取消"]').click()

def test_money():
    '''操作我要借款'''
    #driver.find_element_by_link_text('我要借款').click()
    el = driver.find_elements_by_css_selector('.pr20')
    el[2].click()
    ele = driver.find_elements_by_xpath('//div[@class="tc pt10"]/a/img')
    ele[0].click()

def test_input_info():
    '''輸入借款信息'''
    driver.find_element_by_css_selector('#borrowtitle').send_keys(2)
    driver.find_element_by_css_selector('#borrowamount').send_keys(2000)
    driver.find_element_by_css_selector('#repaytime').send_keys(20)
    driver.find_element_by_css_selector('#apr').send_keys(20)
    # todo js操作滾動條
    js1 = "document.documentElement.scrollTop=1000"
    driver.execute_script(js1)
    time.sleep(1)
    elem = driver.find_elements_by_xpath('//div[@style="width:710px;"]/input[@type="text"]')
    elem[0].send_keys(2)
    driver.find_element_by_xpath('//button[@rel="file_1"]').click()
    time.sleep(1)
    driver.find_element_by_xpath('//li[text()="本地上傳"]').click()
    time.sleep(1)
    # todo 文件操作上傳圖片
    driver.find_element_by_name('imgFile').send_keys(r'D:\file\1.png')
    time.sleep(1)
    driver.find_element_by_xpath('//input[@type="button" and @value="確定"]').click()

def test_closed():
    time.sleep(6)
    driver.quit()

test_open_page()
test_register('admin','admin')
test_money()
test_input_info()
test_closed()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM