python编程使用selenium模拟登陆淘宝实例代码


Posted in Python onJanuary 25, 2018

selenium简介

selenium 是一个web的自动化测试工具,不少学习功能自动化的同学开始首选selenium ,相因为它相比QTP有诸多有点:

  • * 免费,也不用再为破解QTP而大伤脑筋
  • * 小巧,对于不同的语言它只是一个包而已,而QTP需要下载安装1个多G 的程序。
  • * 这也是最重要的一点,不管你以前更熟悉C、 java、ruby、python、或都是C# ,你都可以通过selenium完成自动化测试,而QTP只支持VBS
  • * 支持多平台:windows、linux、MAC ,支持多浏览器:ie、ff、safari、opera、chrome
  • * 支持分布式测试用例的执行,可以把测试用例分布到不同的测试机器的执行,相当于分发机的功能。

selenium安装(Windows)

方法1、通过pip 安装

C:\Users\fnngj>python3 -m pip install selenium

方法2、通过下载包安装

直接下载selenium包:

https://pypi.python.org/pypi/selenium

解压,cmd进入目录:

C:\selenium\selenium2.53.5> python3 setup.py install

python使用selenium模拟登陆淘宝

实例代码

#coding=utf-8

import time
import datetime
import sys
import os
import random

import logging

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver import ActionChains
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

def common_click(driver,element_id,sleeptime=3):
  actions = ActionChains(driver)
  actions.move_to_element(element_id)
  actions.click(element_id)
  actions.perform()
  time.sleep(sleeptime) 

def login_in(user,pwd):
  #open login page
  driver.get('https://login.taobao.com/member/login.jhtml')
  time.sleep(3)
  sb=driver.find_element_by_class_name("login-switch")
  commonclick(driver,sb)
  userbox=driver.find_element_by_id("TPL_username_1")
  pwdbox=driver.find_element_by_id("TPL_password_1")
  userbox.clear()
  userbox.send_keys(user)
  commonclick(driver,pwdbox) 
  pwdbox.send_keys(pwd)
  loadmore=driver.find_element_by_id("J_SubmitStatic")
  commonclick(driver,loadmore)
  time.sleep(20)
if __name__ == '__main__': 
  DesiredCapabilities.PHANTOMJS['phantomjs.page.settings.loadImages'] = True 
  DesiredCapabilities.PHANTOMJS['phantomjs.page.settings.userAgent'] = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:25.0) Gecko/20100101 Firefox/25.0 "

  driver = webdriver.PhantomJS(service_args=['--ignore-ssl-errors=true'])
  driver.set_script_timeout(30)
  driver.set_page_load_timeout(30)

  login_in(user,password)

总结

以上就是本文关于python编程使用selenium模拟登陆淘宝实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
用python记录运行pid,并在需要时kill掉它们的实例
Jan 16 Python
Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】
Jul 12 Python
python 对多个csv文件分别进行处理的方法
Jan 07 Python
Python3.5运算符操作实例详解
Apr 25 Python
如何通过python的fabric包完成代码上传部署
Jul 29 Python
Windows下python3安装tkinter的问题及解决方法
Jan 06 Python
基于plt.title无法显示中文的快速解决
May 16 Python
使用Python FastAPI构建Web服务的实现
Jun 08 Python
Python求区间正整数内所有素数之和的方法实例
Oct 13 Python
Sublime Text3最新激活注册码分享适用2020最新版 亲测可用
Nov 12 Python
jupyter notebook更换皮肤主题的实现
Jan 07 Python
Jupyter安装拓展nbextensions及解决官网下载慢的问题
Mar 03 Python
python画出三角形外接圆和内切圆的方法
Jan 25 #Python
Python实现批量压缩图片
Jan 25 #Python
python生成圆形图片的方法
Mar 25 #Python
scrapy spider的几种爬取方式实例代码
Jan 25 #Python
scrapy爬虫完整实例
Jan 25 #Python
python实现画圆功能
Jan 25 #Python
Python中常用信号signal类型实例
Jan 25 #Python
You might like
PHP 处理图片的类实现代码
2009/10/23 PHP
php 日期和时间的处理-郑阿奇(续)
2011/07/04 PHP
PHP编程实现阳历转换为阴历的方法实例
2017/08/08 PHP
JavaScript 入门基础知识 想学习js的朋友可以参考下
2009/12/26 Javascript
js简单实现HTML标签Select联动带跳转
2013/10/23 Javascript
当达到输入长度时表单自动切换焦点
2014/04/06 Javascript
JQuery 给元素绑定click事件多次执行的解决方法
2014/09/09 Javascript
jQuery实现瀑布流布局
2014/12/12 Javascript
JavaScript弹出新窗口并控制窗口移动到指定位置的方法
2015/04/06 Javascript
jquery+css3实现会动的小圆圈效果
2016/01/27 Javascript
javascript中call apply 与 bind方法详解
2016/03/10 Javascript
详解Vue 非父子组件通信方法(非Vuex)
2017/05/24 Javascript
原生js FileReader对象实现图片上传本地预览效果
2020/03/27 Javascript
react实现一个优雅的图片占位模块组件详解
2017/10/30 Javascript
使用Angular CLI进行单元测试和E2E测试的方法
2018/03/24 Javascript
使用node.js实现微信小程序实时聊天功能
2018/08/13 Javascript
chosen实现省市区三级联动
2018/08/16 Javascript
详解Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)
2019/04/20 Javascript
详解vue 在移动端体验上的优化解决方案
2019/05/20 Javascript
Moment.js实现多个同时倒计时
2019/08/26 Javascript
layui lay-verify form表单自定义验证规则详解
2019/09/18 Javascript
vue表单数据交互提交演示教程
2019/11/13 Javascript
Vue的状态管理vuex使用方法详解
2020/02/05 Javascript
如何将Node.js中的回调转换为Promise
2020/11/10 Javascript
Pythont特殊语法filter,map,reduce,apply使用方法
2016/02/27 Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
2018/02/18 Python
python 机器学习之支持向量机非线性回归SVR模型
2019/06/26 Python
利用python+request通过接口实现人员通行记录上传功能
2021/01/13 Python
美国厨房和园艺工具网上商店:Nestneed
2019/08/24 全球购物
部队学习十八大感言
2014/01/11 职场文书
爱岗敬业演讲稿范文
2014/01/14 职场文书
医院总经理岗位职责
2014/02/04 职场文书
敬老院献爱心活动总结
2014/07/08 职场文书
幼儿园大班开学寄语
2014/08/02 职场文书
CSS3实现指纹特效代码
2022/03/17 HTML / CSS
MySQL 主从复制数据不一致的解决方法
2022/03/18 MySQL