一、梳理
1、根据要求需要自动添加很多条数据
2、这就涉及到很多方面的知识。元素定位的方法(这个就能遇到很多坑,要完全掌握元素定位才能避免进坑)、循环等(代码基础要掌握好)
二、操作
- 选择进行自动化操作的浏览器(火狐,谷歌二选一),我一般用谷歌浏览器。下载对应版本的chomedriver
#!/usr/bin/env python #-*- coding: utf-8 -*- \'\'\' @File : vuid_list.py @Author: kiki @Date : 2019-10-14 \'\'\' # -*- coding:utf-8 -*- import random import time import os from selenium import webdriver url = \'https://...................../list\' chromedriver = "/Users/admin/Downloads/chromedriver" #Mac ChomeDriver存放位置 def randomSleep(minS, maxS): # 定义随机停顿时间函数 time.sleep((maxS - minS) * random.random() + minS) # 声明浏览器对象 os.environ["webdriver.chrome.driver"] = chromedriver driver = webdriver.Chrome(chromedriver) driver.get(url) # 访问页面,用 get() 方法来请求一个网页,参数传入链接 URL randomSleep(1, 2) driver.find_element_by_id(\'username\').send_keys(\'1\') time.sleep(1) driver.find_element_by_id(\'password\').send_keys(\'1\') randomSleep(1, 2) # 点击登录 driver.find_element_by_xpath(\'//*[@id="LAY-user-login"]/div/div[2]/div[3]/button\').click() time.sleep(4) def number(): # driver.maximize_window() driver.implicitly_wait(10) # 输入vuid,数量 input_box=driver.find_element_by_xpath(\'//*[@id="form"]/div[1]/div/input\') input_box.send_keys(\'VSTB1\') # input_box.send_keys() time.sleep(2) driver.find_element_by_xpath(\'//*[@id="number"]\').send_keys(\'1\') time.sleep(1) driver.find_element_by_xpath(\'//*[@id="form"]/div[3]/button\').click() time.sleep(3) # clear():清空输入框 try: time.sleep(2) input_box.clear() print(\'成功清空输入框\') except Exception as e: print(\'fail清空输入框\'+format(e)) # time.sleep(5) if __name__ == "__main__": for i in range(0, 10): #number(要执行的操作)循环10次 number()
这里遇到一个小难题,就是输入框的内容要重复输入,就需要用到clear()来清除之前输入的内容,避免输入的内容叠加。就像这样
clear()后的效果是这样:
下篇会写个元素定位的知识,新手上路,有错误请前辈们多多指教!