学习32 :Web自动化·js发送和文件上传

JS发送

写js代码时,建议现在网友F12控制台中先进行编写,然后在复制到python中,以防出现错误

实例1:
driver.get("https://www.12306.cn/index/")

#使用强制等待
time.sleep(1)
#发送js code给浏览器
js_code = """e = document.getElementById("train_date")
		e.readOnly = false;
		e.value = "2020-07-20" """
driver.excute_script(js_code)
实例2:
driver.get("https://www.12306.cn/index/")

#使用强制等待
time.sleep(1)
#发送js code给浏览器
js_code = """e = document.getElementById("train_date")"""
js_code = """e.readOnly = false;"""
js_code = """e.value = "2020-07-20" """
driver.excute_script(js_code)

窗口滚动

滚动方式

  • js代码:e.scrolllntoView()
  • elem.location_once_scrolled_into_view
滑动到页面最底部
for i in range(3)
	js_code = 'window.scrollTo(0,document.body.scrollHeight);'
	driver.execute_script(js_code)

文件上传

方法1:
#定位上传文件按钮
elem_file = driver.find_element_by_name("file")

#输入文件路径
elem_file.send_keys("d:\demo.txt")
方法2: Pywinauto(windows系统)
#有时候文件上传不是一个普通的input元素,可能是其他元素或者组件

from pywinauto import Desktop
app = Desktop()
#根据名字找到弹出窗口
dialog = app['打开']    

#在输入框中输入值
dialog['Edit'].type_keys('D:\demo.txt")
dialog['Button'].click()
方法3: pyautogui(Windows 和 Mac 都可以用)(不支持中文)
#必须使用pip进行倒入,必须要先倒入pillow ,如果python为3.8版本导入格式:  pip install pyautogui python3.8
pip install pillow==6.2.2
pip install pyautogui 

import pyautogui
pyautogui.write('d:\demo.txt')
pyautogui.press('enter',2)
方法4: 中文(支持linux 和 mac 和 windows)
import pyperclip

pypercli.copy('d:\用户.txt')

pyautogui.hotkey('ctrl','v')
pyautogui.press('enter',presses=2)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值