猿问

Selenium python重复图像

使用 python 上传图片来控制 selenium。它工作完美,但由于某种原因它复制了图像。


IE - 上传第一张图片 确认上传为主图片。第二张图片上传第三张图片上传+2张图片重新上传等等......


使用此代码


for pair in pair_list:

    file = pathlib.Path(pair)

    if file.exists ():

        #HERE I RESIZE PHOTO

        basewidth = 580

        img = Image.open(pair)

        wpercent = (basewidth/float(img.size[0]))

        hsize = int((float(img.size[1])*float(wpercent)))

        img = img.resize((basewidth,hsize), Image.ANTIALIAS)

        newName = pair.replace('.jpg','_resized.jpg')

        img.save(newName, quality = 95) 

        pair = newName

        myImagesToDelete.append(pair)

        #END OF RESIZE

        #print('Uploading photo:' + pair)


        if firstpic == True:

            firstpic = False

            #ADD MAIN PICTURE

            try:

                myElem = WebDriverWait(driver, delay).until(EC.presence_of_element_located((By.ID, 'img-file-input')))    

                myElem.send_keys(pair)

            except TimeoutException:

                errorDuringFill = True

            time.sleep(5)

            print('First picture added ' + pair)

            #CONFIRM PICTURE

            try:

                myElem = WebDriverWait(driver, delay).until(EC.presence_of_element_located((By.XPATH, '/html/body/div[1]/main/div[2]/div/div/div[2]/section[1]/div/div[2]/div[2]/div[2]/div[3]/div/button[2]')))

                myElem.click()

            except TimeoutException:

                errorDuringFill = True

            print('First picture confirmed')

        else:

            #ADD OTHER PICTURES

            print('Adding it as other picture: ' + pair)

            try:

                myElem = WebDriverWait(driver, delay).until(EC.presence_of_element_located((By.ID, 'img-file-input')))  

                myElem.send_keys(pair)

            except TimeoutException:

                errorDuringFill = True

            #time.sleep(2)

路径很好,我可以在日志中看到循环很好。总共 5 个循环,我添加了 8 个图像。

显示的 Python 日志日志: Python 日志

上传后的画面: 画面

动图:

https://i.stack.imgur.com/018SA.gif


开心每一天1111
浏览 140回答 1
1回答

慕田峪9158850

要删除重复的图像,您可以一次上传所有图像,这样所有图像都将作为重复上传。myElem.send_keys(“imagePath1” + \n + “imagePath2”)
随时随地看视频慕课网APP

相关分类

Python
我要回答