Python+Selenium学习笔记02-从本地上传文件

Python+Selenium如何实现从本地选择文件上传可难为了我这个小菜鸟。通过查阅资料发现可以借助Autolt工具实现,因为是刚开始学,也不确定这种方式是不是最好的==,仅供大家参考

1.使用Autolt创建应用程序

1.下载并安装Autoit

 https://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe

2.安装成功后打开AutoIt Windows Info识别弹框信息

3.打开SciTE Script Editor,根据弹框编写脚本

Python+Selenium学习笔记02-从本地上传文件_第1张图片

WinActivate("打开");
ControlSetText("打开", "", "Edit1", "F:\个人文档\素材\素材\小icon\momo.jpg" );
Sleep(2000);
ControlClick("打开", "", "Button1");

4.Compile Script to.exe 用于将AutoIt生成执行文件

该步骤成功执行后,生成文件modifyPic.exe

5.Run Script 用于执行AutoIt脚本验证功能是否生效

如果生效,则开始编写代码

2.在代码中引用

以下是csdn上传头像实例

# -*- coding: utf-8 -*-
#sample02.py

import configparser

import os
from selenium import webdriver
import time
PostUrl = "https://i.csdn.net/#/uc/profile"
# 用浏览器实现访问
driver = webdriver.Chrome()
driver.get(PostUrl)
time.sleep(3)

driver.find_element_by_xpath('/html/body/div[4]/div/div/div[2]/div/h3/a').click()
time.sleep(3)
driver.find_element_by_id('username').send_keys("******@163.com")
driver.find_element_by_id('password').send_keys("******")
driver.find_element_by_class_name('logging').click()
time.sleep(5)

driver.find_element_by_class_name("modify").click()
driver.find_element_by_class_name("vicp-drop-area").click()
time.sleep(2)
os.system("F:\\script\\modifyPic.exe")
time.sleep(5)
driver.find_element_by_class_name("vicp-operate-btn").click()

 

你可能感兴趣的:(Python+selenium)