Python使用Selenium模拟登录淘宝完整指南
本文详细介绍如何利用Python和Selenium库实现淘宝网站的自动化模拟登录。内容涵盖Selenium的核心优势、Windows环境下的安装方法(包括pip和源码包两种途径),并提供完整的模拟登录代码示例。通过该实例,读者可以掌握Web自动化测试的基础技巧及处理动态页面的方法。
Selenium简介
Selenium是一款用于Web应用程序自动化测试的工具。许多从事功能自动化的开发者倾向于选择它,主要因为相较于QTP,Selenium具备多项显著优势:
- 首先,它是免费软件,无需再为破解QTP而耗费精力。
- 其次,Selenium非常轻量级,对于不同编程语言而言,它仅仅是一个库文件;相比之下,QTP需要下载安装超过1GB的程序。
- 这一点至关重要:无论开发者更熟悉C、Java、Ruby、Python还是C#,都可以使用Selenium完成自动化测试,而QTP仅支持VBS语言。
- Selenium支持多种操作系统,包括Windows、Linux和Mac,同时也兼容多种浏览器,如IE、Firefox、Safari、Opera和Chrome。
- 此外,它支持分布式测试用例的执行,允许将测试任务分发到不同的机器上运行,从而具备类似分发机的功能。
Selenium在Windows系统中的安装方法
方法一:通过pip命令进行安装
C:\Users\fnngj>python3 -m pip install selenium
方法二:通过下载源码包进行安装
直接访问以下链接下载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模拟登录淘宝的完整代码示例,希望能对大家有所帮助。感兴趣的朋友可以参考本站其他相关专题内容。如有任何不足之处,欢迎留言指正。感谢各位对本站的支持!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













