from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

class TaoBaoLogin(object):

def __init__(self, account, password):
self.options = webdriver.ChromeOptions()
# 设置开发者模式
self.options.add_experimental_option("excludeSwitches", ['enable-automation'])
# 不加载图片,快速访问
self.options.add_experimental_option("prefs", {"profile.managed_default_content_settings.images": 2})
self.driver = webdriver.Chrome(options=self.options)
self.url = "https://login.taobao.com/member/login.jhtml"
# 等待浏览器加载数据
self.wait = WebDriverWait(self.driver, 10, 0.5)
self.account = account
self.password = password

def __del__(self):
self.driver.quit()

def login(self):
self.driver.get(self.url)
try:
pwd_login_elem = self.wait.until(
EC.element_to_be_clickable((By.XPATH, "//div[@id='J_QRCodeLogin']/div[@class='login-links']/a[1]")))
pwd_login_elem.click()

wb_login_elem = self.wait.until(EC.element_to_be_clickable((By.CLASS_NAME, "weibo-login")))
wb_login_elem.click()

account_elem = self.wait.until(EC.presence_of_element_located((By.NAME,"username")))
account_elem.send_keys(self.account)

pwd_elem = self.wait.until(EC.presence_of_element_located((By.NAME,"password")))
pwd_elem.send_keys(self.password)

submit = self.wait.until(EC.element_to_be_clickable((By.XPATH,"//a[@class='W_btn_g']")))
submit.click()

print("登陆成功")

except:
print("登陆失败")

if __name__ == '__main__':
username = input("请输入你的微博账号>>")
password = input("请输入你的微博密码>>")
TaoBaoLogin(username, password).login()
---------------------

使用selenium实现模拟淘宝登陆的更多相关文章

  1. selenium模拟淘宝登陆,过所有验证

    淘宝模拟登陆实现 由于淘宝使用了滑动验证码,需要进行模糊手动滑动,因此考虑使用selenium+chromedriver进行模拟登陆. 淘宝的登陆网址:https://login.taobao.com ...

  2. Python爬虫实战八之利用Selenium抓取淘宝匿名旺旺

    更新 其实本文的初衷是为了获取淘宝的非匿名旺旺,在淘宝详情页的最下方有相关评论,含有非匿名旺旺号,快一年了淘宝都没有修复这个. 可就在今天,淘宝把所有的账号设置成了匿名显示,SO,获取非匿名旺旺号已经 ...

  3. php单点登录之模拟淘宝天猫同步登录

    说到单点登录大家都很了解,一个站点登录其他域会自动登录. 单点登录SSO(Single Sign On)的方法有很多,比如:p3p.共享session.共享cookice.第三方OAuth认证. 这里 ...

  4. 利用Selenium爬取淘宝商品信息

    一.  Selenium和PhantomJS介绍 Selenium是一个用于Web应用程序测试的工具,Selenium直接运行在浏览器中,就像真正的用户在操作一样.由于这个性质,Selenium也是一 ...

  5. python3编写网络爬虫16-使用selenium 爬取淘宝商品信息

    一.使用selenium 模拟浏览器操作爬取淘宝商品信息 之前我们已经成功尝试分析Ajax来抓取相关数据,但是并不是所有页面都可以通过分析Ajax来完成抓取.比如,淘宝,它的整个页面数据确实也是通过A ...

  6. PYTHON 爬虫笔记十:利用selenium+PyQuery实现淘宝美食数据搜集并保存至MongeDB(实战项目三)

    利用selenium+PyQuery实现淘宝美食数据搜集并保存至MongeDB 目标站点分析 淘宝页面信息很复杂的,含有各种请求参数和加密参数,如果直接请求或者分析Ajax请求的话会很繁琐.所以我们可 ...

  7. 【Python】selenium模拟淘宝登录

    # -*- coding: utf-8 -*- from selenium import webdriver from selenium.webdriver.common.by import By f ...

  8. 利用Selenium+java实现淘宝自动结算购物车商品(附源代码)

    转载请声明原文地址! 本次的主题是利用selenium+java实现结算购买购物车中的商品. 话不多说,本次首先要注意的是谷歌浏览器的版本,浏览器使用的驱动版本,selenium的jar包版本.   ...

  9. 模拟淘宝登录和购物车功能:使用cookie记录登录名,下次登录时能够记得上次的登录名,使用cookie模拟购物车功能,使用session记住登录信息并验证是否登录,防止利用url打开网站,并实现退出登录功能

    Login <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc ...

随机推荐

  1. raywenderlich.com的Swift编程风格指南

    翻译自:https://github.com/raywenderlich/swift-style-guide 这个风格指南可能和你从其它地方看到的不同,我们的焦点主要集中在互联网和文章上的可读性.创建 ...

  2. UIWebView 设置背景为透明

    UIWebView的背景怎样设置成为透明? [webview setBackgroundColor:[UIColor clearColor]]; [webview setOpaque:NO]; 两句代 ...

  3. android自己定义之 5.0 风格progressBar

    近期做项目,用到了ProgressBar .就想到了要使用Android5.0 的效果,就随手实现了一下. 效果图: 大概的思路: 1. 圆圈通过Canvas去绘制 2.圆圈的动画通过Animator ...

  4. 从一个小demo开始,体验“API经济”的大魅力

    写在前面 “API经济”这个词是越来越火了,但是"API经济"具体指的是什么,相信很多人还没有个明确的认识.不过今天我可不打算长篇大论的去讲解一些概念,我们就以“电话号码归属地查询 ...

  5. HDU - 3631 Shortest Path(Floyd最短路)

    Shortest Path Time Limit: 1000MS Memory Limit: 32768KB 64bit IO Format: %I64d & %I64u SubmitStat ...

  6. ubuntu rdesktop 全屏切换快捷键

    rdesktop 全屏之后进行切换 : ctrl + alt +enter

  7. MBEEWALK - Bee Walk

    A bee larva living in a hexagonal cell of a large honey comb decides to creep for a walk. In each “s ...

  8. 【Apio2009】Bzoj1179 Atm

    目录 List Description Input Output Sample Input Sample Output HINT Solution Code Dfs 记忆化搜索 Position: h ...

  9. 02、监听key是否正确

    SDKInitializer其实是有两个action,第三个SDK_BROADTCAST_INTENT_EXTRA_INFO_KEY_ERROR_CODE虽然是一个常量但是它不是action.第二个a ...

  10. Behavior Designer扩展

    BehaviorManager.instance.Tick(behaviorTree); 卸载update里u3d直接卡死 = = SharedVariable直接赋值会改变他的引用关系,必须用XXX ...