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实现代码行数统计示例分享
Feb 10 Python
编程语言Python的发展史
Sep 26 Python
在Python中操作列表之List.pop()方法的使用
May 21 Python
解决python3中自定义wsgi函数,make_server函数报错的问题
Nov 21 Python
Python科学计算包numpy用法实例详解
Feb 08 Python
python删除服务器文件代码示例
Feb 09 Python
pandas数据清洗,排序,索引设置,数据选取方法
May 18 Python
python实现任意位置文件分割的实例
Dec 14 Python
详解Python函数式编程—高阶函数
Mar 29 Python
Python识别快递条形码及Tesseract-OCR使用详解
Jul 15 Python
python 如何去除字符串头尾的多余符号
Nov 19 Python
如何在mac下配置python虚拟环境
Jul 06 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
Yii CFileCache 获取不到值的原因分析
2017/02/08 PHP
CentOS7编译安装php7.1的教程详解
2019/04/18 PHP
jquery click([data],fn)使用方法实例介绍
2013/07/08 Javascript
javascript页面渲染速度测试脚本分享
2014/04/15 Javascript
AngularJS实现表单验证
2015/01/28 Javascript
JavaScript获取当前网页最后修改时间的方法
2015/04/03 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
2015/08/07 Javascript
基于jQuery实现火焰灯效果导航菜单
2017/01/04 Javascript
jquery实现页面加载效果
2017/02/21 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
2018/08/31 Javascript
微信小程序左滑删除功能开发案例详解
2018/11/12 Javascript
从0到1构建vueSSR项目之路由的构建
2019/03/07 Javascript
基于layui内置模块(element常用元素的操作)
2019/09/20 Javascript
jQuery实现简易聊天框
2020/02/08 jQuery
Vue如何提升首屏加载速度实例解析
2020/06/25 Javascript
win10环境下python3.5安装步骤图文教程
2017/02/03 Python
python机器学习之神经网络(二)
2017/12/20 Python
python多线程调用exit无法退出的解决方法
2019/02/18 Python
搭建python django虚拟环境完整步骤详解
2019/07/08 Python
Django 创建后台,配置sqlite3教程
2019/11/18 Python
Pandas实现dataframe和np.array的相互转换
2019/11/30 Python
通过python 执行 nohup 不生效的解决
2020/04/16 Python
python regex库实例用法总结
2021/01/03 Python
python中使用asyncio实现异步IO实例分析
2021/02/26 Python
检测浏览器是否支持html5视频的代码
2013/03/28 HTML / CSS
HTML5 Canvas绘制圆点虚线实例
2015/01/01 HTML / CSS
网站性能延迟加载图像的五种技巧(小结)
2020/08/13 HTML / CSS
同步和异步有何异同,在什么情况下分别使用他们?
2012/12/28 面试题
教师个人鉴定材料
2014/02/08 职场文书
护理专业毕业生自我鉴定总结
2014/03/24 职场文书
单位委托书怎么写
2014/08/02 职场文书
人力资源部岗位职责
2015/02/11 职场文书
小学生光盘行动倡议书
2015/04/28 职场文书
优秀团员主要事迹范文
2015/11/05 职场文书
MySQL空间数据存储及函数
2021/09/25 MySQL