python + selenium + pykeyboard实现自动导入文件

环境准备:
Anaconda自带python3.6.5
selenium-3.141.0
pyperclip 用于复制中文路径
下载pykeyboard需要准备:
pywin32模块默认已安装
pyHook模块:pyHook-1.5.1-cp36-cp36m-win_amd64.whl
可从这里下载对应版本
http://www.lfd.uci.edu/~gohlke/pythonlibs/
PyUserInput模块

代码:
可能需要导入的模块:

from pymouse import *
from pykeyboard import PyKeyboard
import pyperclip
import os,sys
from selenium import webdriver
import time

def upload():

def upload(driver):
    browseBtn=driver.find_element_by_xpath('浏览按钮的xpath路径')
    #点击浏览按钮
    browseBtn.click()
    
    #pyperclip复制文件所在路径
    pyperclip.copy(r"D:\upload\导入模板.csv")
    time.sleep(5)#此处为等待windows文件资源管理器弹出时间
    k=PyKeyboard()
    #模拟键盘ctrl+v操作复制文件路径
    k.press_key(k.control_key)
    k.tap_key('v')
    k.release_key(k.control_key)
    
    time.sleep(1)
    #模拟键盘回车操作
    k.tap_key(k.enter_key)
    
    #点击导入按钮
    importBtn=driver.find_element_by_xpath('导入按钮的xpath路径')
    #获取value属性值
    print(importBtn.get_attribute('value'))
    importBtn.click()
    
    time.sleep(1)
    #导入成功后弹出提示框,点击导入成功提示框确认
    msgBoxYBtn=driver.find_element_by_xpath('导入成功提示框确认按钮的xpath路径')
    msgBoxYBtn.click()
    
    #回到导入界面,点击关闭按钮
    closeBtn=driver.find_element_by_xpath('导入界面关闭按钮的xpath路径')
    print(closeBtn.get_attribute('value'))
    closeBtn.click()

由于导入文件中含中文,因此使用pyperclip先对文件名进行复制后,再用键盘模拟粘贴操作实现文件导入。若没中文,可尝试用:k.type_string(r’D:\upload\xx.csv’) 直接传入文件路径。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值