网页脚本入门

  • Abstract
  • 实例
  • 准备知识
  • 完整流程
  • Conclusion

Abstract

  • 获取网页某个元素
  • 输入内容
  • 鼠标点击
  • 键盘某个键输入
  • 其它

实例

  1. 打开网站,并且输入账号密码,点击登录
  2. 点击精选,进入搜索界面,搜索火焰杯测试商品,点击搜索的结果


  3. 点击加入购物车(两次)

准备知识

  • 启动 selenium
    下载安装相应的库(selenium),然后把浏览器的webdriver下载好放到python的目录下

    启动代码
from selenium import webdriver
driver = webdriver.Chrome()#可以换成自己喜欢的浏览器
  • 打开网站
driver.get("http://litemall.hogwarts.ceshiren.com/vue/index.html#/login")
  • 获取某个元素
    可以通过id、name、xpath等获取元素,如下图

  • 获取元素的路径
    打开页面,打开开发者模式(F12),选择元素,右键,copy,选择你要copy的选项

  • 获取账号、密码输入框,并且填入

user_name = "name"
password = “password"
driver.find_element_by_xpath("/html/body/div/div[2]/div[2]/div[1]/div[1]/input").send_keys(user_name)# 这里填入的是元素的xpath路径
driver.find_element_by_xpath("/html/body/div/div[2]/div[2]/div[2]/div[1]/input").send_keys(password)
  • 点击登录按钮
driver.find_element_by_xpath("//*[@id='app']/div[2]/div[2]/button").click()
  • 页面更新后最好等待一段时间,不然获取不到正确的元素
time.sleep(1)#等待1s
  • 输入中文,并回车搜索
    需要设置编码格式
s1 = unicode("火焰杯测试商品", 'utf-8')
driver.find_element_by_xpath("/html/body/div/div[2]/form/div/div/div/div[2]/div/input").send_keys(s1)
driver.find_element_by_xpath("/html/body/div/div[2]/form/div/div/div/div[2]/div/input").send_keys(Keys.ENTER)

完整流程

import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keysdef solve():driver = webdriver.Chrome()driver.get("http://litemall.hogwarts.ceshiren.com/vue/index.html#/login")user_name = "user123"password = "user123"driver.find_element_by_driver.find_element_by_xpath("/html/body/div/div[2]/div[2]/div[1]/div[1]/input").send_keys(user_name)driver.find_element_by_xpath("/html/body/div/div[2]/div[2]/div[2]/div[1]/input").send_keys(password)driver.find_element_by_xpath("//*[@id='app']/div[2]/div[2]/button").click()time.sleep(1)# driver.switch_to.frame("right")#切换窗口driver.find_element_by_xpath("/html/body/div/div[3]/div[1]").click()time.sleep(1)s1 = unicode("火焰杯测试商品", 'utf-8')driver.find_element_by_xpath("/html/body/div/div[2]/div[1]/div[1]/div/div/div[2]/div/input").click()time.sleep(1)driver.find_element_by_xpath("/html/body/div/div[2]/form/div/div/div/div[2]/div/input").send_keys(s1)driver.find_element_by_xpath("/html/body/div/div[2]/form/div/div/div/div[2]/div/input").send_keys(Keys.ENTER)time.sleep(1)driver.find_element_by_xpath("/html/body/div/div[2]/div[2]").click()time.sleep(1)driver.find_element_by_xpath("/html/body/div/div[2]/div[5]/button[1]").click()time.sleep(1)driver.find_element_by_xpath("/html/body/div/div[2]/div[3]/div[3]/div[3]/button[1]").click()time.sleep(10)# element.close()if __name__ == '__main__':solve()

Conclusion

  1. 页面元素改变(更新,新页面)需要等待一段时间,才能获取到新页面的元素
  2. 填入中文时需要设置编码格式
  3. 获取元素路径,在开发者模式下,右键需要定位的元素,然后复制所需要复制的内容

软件测试(网页,脚本)入门相关推荐

  1. 软件测试2小时入门-曹红杏-专题视频课程

    软件测试2小时入门 课程介绍         本课程内容系统.全面.简洁.通俗易懂,通过2个多小时的介绍,让大家对软件测试有个系统的理解和认识,具备基本的软件测试理论基础. 主要内容分为5个部分: 1 ...

  2. 从网页搭建入门python web_从网页搭建入门JavaWeb

    实战 Vue.js 源码全方位深入解析 Python 爬虫工程师必学--App数据抓取实战 Spring Cloud微服务实战 Vue2.5开发去哪儿网App 从零基础入门到实战项目 FFmpeg音视 ...

  3. 视频教程-软件测试2小时入门-软件测试

    软件测试2小时入门 课程讲师有中科院硕士学位,从事软件测试十余年,有丰富的测试实践经验和理论基础. 曹红杏 ¥12.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+技术好课免费看 AP ...

  4. 用python写脚本看什么书-终于知晓python编写脚本入门教程

    PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成.PyQt5本身拥有超过620个类和6000函数及方法.在可以运行于多个平台.PyQt5拥有双重协议 ...

  5. Linux Shell脚本入门--wget 命令用法详解

    Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...

  6. Linux之Shell脚本入门

    一.Shell概述 Shell是一个命令行解释器,它接受应用程序/用户命令,然后调用操作系统内核. Shell还是一个功能强大的编程语言,易编写.易调试.灵活性强. 二.Shell脚本入门 1.脚本格 ...

  7. 《HTML5+CSS3网页设计入门必读》——1.7 使用FTP传输文件

    本节书摘来自异步社区<HTML5+CSS3网页设计入门必读>一书中的第1章,第1.7节,作者: [美]Julie Meloni更多章节内容可以访问云栖社区"异步社区"公 ...

  8. 《HTML5+CSS3网页设计入门必读》——2.8 转变(CH-CH变化)

    本节书摘来自异步社区<HTML5+CSS3网页设计入门必读>一书中的第2章,第2.8节,作者: [英]Jeremy Keith , [美]Dan Cederholm 更多章节内容可以访问云 ...

  9. Linux Shell脚本入门教程系列之(十六) Shell输入输出重定向

    本文是Linux Shell系列教程的第(十六)篇,更多Linux Shell教程请看:Linux Shell系列教程 Shell中的输出和输入的重定向是在使用中经常用到的一个功能,非常实用,今天就为 ...

  10. Linux Shell脚本入门教程系列之(十五) Shell函数简介

    本文是Linux Shell脚本系列教程的第(十五)篇,更多Linux Shell教程请看:Linux Shell脚本系列教程 上一篇之后,函数可以将一个复杂功能划分成若干模块,从而使程序结构更加清晰 ...

最新文章

  1. 量子领域、人工智能都是佼佼者,中国科技实力详解
  2. 【Android 逆向】ELF 文件格式总结 ★★★
  3. 金泰联限量稳定虚拟主机赞助计划
  4. cv2.bitwise_not(主要讲这个)
  5. NLP太难学了!?吃透NLP的方法来拿走
  6. db2与mysql编目_DB2编目、联邦数据库 - Goopand's OS Space - OSCHINA - 中文开源技术交流社区...
  7. crazyradio焊接和下载固件过程
  8. Struts2入门这一篇就够了 1
  9. poi报表导出4.1.0版本工具类 导出并下载
  10. 勒索病毒记录:将电脑 后缀改为.nedjprf
  11. mvn dependency命令
  12. You have tried to change the API from what has been previously approved
  13. 没错,支付也有个七层模型
  14. win 7更改计算机用户名和密码错误,win7系统一开机就显示用户名和密码错误故障的解决方法...
  15. project各版本网盘免费下载
  16. idea 代码格式化快捷方式
  17. vue-scroller回到顶部
  18. python输出输入法_python 怎么转化输入法
  19. 运用京东云代码托管、云编译、云部署等产品进行蓝绿部署简单实践
  20. 因执迷而绽放,终登聆听贡献者荣誉榜

热门文章

  1. 易语言如何调用c dll文件,易语言调用C++写的DLL
  2. HTML5 自动聚焦 autofocus 属性
  3. mysql 1264_关于MySQL的1264错误处理及sql_mode设置
  4. Python数据分析-绘图-3-Bokeh交互式绘图-1-基本构成与语法
  5. 笔记 | 产品经理必懂的技术(五)
  6. 泰坦尼克号 机器学习_机器学习项目泰坦尼克号问题陈述
  7. 镜像搬运工 skopeo
  8. XML常见的两种解析方式总结
  9. Bootstrap5 弹出框
  10. oracle blob 照片,要在oracle里面存入图片 用 blob类型