配置好webdriver,用的是Chrome的

import cv2

import time

import numpy as np

from selenium import webdriver

from urllib import request

from selenium.webdriver.common.action_chains import ActionChains

brower = webdriver.Chrome()

def loadpage(userid, password):

url = "https://passport.jd.com/new/login.aspx?"

brower.get(url)

time.sleep(3)

s1 = r'//div/div[@class="login-tab login-tab-r"]/a'

userlogin = brower.find_element_by_xpath(s1)

userlogin.click()

# time.sleep(5)

username = brower.find_element_by_id("loginname")

username.send_keys(userid)

userpswd = brower.find_element_by_id("nloginpwd")

userpswd.send_keys(password)

# time.sleep(5)

brower.find_element_by_id("loginsubmit").click()

time.sleep(3)

while True:

try:

getPic()

except:

print("登陆成功----")

break

time.sleep(5)

def getPic():

# 用于找到登录图片的大图

s2 = r'//div/div[@class="JDJRV-bigimg"]/img'

# 用来找到登录图片的小滑块

s3 = r'//div/div[@class="JDJRV-smallimg"]/img'

bigimg = brower.find_element_by_xpath(s2).get_attribute("src")

smallimg = brower.find_element_by_xpath(s3).get_attribute("src")

# print(smallimg + '\n')

# print(bigimg)

# 背景大图命名

backimg = "backimg.png"

# 滑块命名

slideimg = "slideimg.png"

# 下载背景大图保存到本地

request.urlretrieve(bigimg, backimg)

# 下载滑块保存到本地

request.urlretrieve(smallimg, slideimg)

# 获取图片并灰度化

block = cv2.imread(slideimg, 0)

template = cv2.imread(backimg, 0)

# 二值化后的图片名称

blockName = "block.jpg"

templateName = "template.jpg"

# 将二值化后的图片进行保存

cv2.imwrite(blockName, block)

cv2.imwrite(templateName, template)

block = cv2.imread(blockName)

block = cv2.cvtColor(block, cv2.COLOR_RGB2GRAY)

block = abs(255 - block)

cv2.imwrite(blockName, block)

block = cv2.imread(blockName)

template = cv2.imread(templateName)

# 获取偏移量

result = cv2.matchTemplate(block, template, cv2.TM_CCOEFF_NORMED) # 查找block在template中的位置,返回result是一个矩阵,是每个点的匹配结果

x, y = np.unravel_index(result.argmax(), result.shape)

# print("x方向的偏移", int(y * 0.4 + 18), 'x:', x, 'y:', y)

# 获取滑块

element = brower.find_element_by_xpath(s3)

ActionChains(brower).click_and_hold(on_element=element).perform()

ActionChains(brower).move_to_element_with_offset(to_element=element, xoffset=y, yoffset=0).perform()

ActionChains(brower).release(on_element=element).perform()

time.sleep(3)

if __name__ == '__main__':

id = "*********" # 用户账号

passwd = "******" # 用户密码

loadpage(id, passwd)

python京东注册机_Python实现京东自动登录相关推荐

  1. 用python写一个自动注册脚本_python写的自动登录人人网的脚本

    我今天给大家分享一个我自己用 #!/usr/bin/env python #encoding=utf-8 import sys import re import urllib2 import urll ...

  2. 改系统注册表 实现Windows XP自动登录

    改系统注册表 实现Windows XP自动登录 2005-08-19 14:55 作者: 出处: 电脑迷 责任编辑:原野 每次进入Windows XP桌面前,总会出现一个用户登录的画面,要求输入用户名 ...

  3. 【Python】基于Selenium实现上海大学校园网自动登录

    [Python]基于Selenium实现上海大学校园网自动登录 安装selenium Selenium官网 以anaconda环境为例,创建一个Selenium的虚拟环境,若不需要可以不做第一.二步 ...

  4. 【系统自动化开发】Python实现广东省公务员报名系统网站自动登录

    [系统自动化开发]Python实现广东省公务员报名系统网站自动登录 [系统自动化开发]Python实现广东省公务员报名系统网站自动登录 一.原理 二.代码 [系统自动化开发]Python实现广东省公务 ...

  5. python开发注册机_用python 写 Atlantis Word Processor 注册机

    [Python] 纯文本查看 复制代码from tkinter import * root=Tk() root.title("Atlantis Word Processor 注册机" ...

  6. python自动登录教程_python实现校园网自动登录的示例讲解

    因为最近想用树莓派搞个远程监控系统,又因为学校的网需要从网页登录而树莓派又不方便搞个显示器带着,所以寻思着搞个能够自动登录校园网的脚本程序,省去了每次都要打开浏览器输入账号密码的烦恼. 1.工具 火狐 ...

  7. python自动登录校园网 密码_python实现校园网自动登录的示例讲解

    因为最近想用树莓派搞个远程监控系统,又因为学校的网需要从网页登录而树莓派又不方便搞个显示器带着,所以寻思着搞个能够自动登录校园网的脚本程序,省去了每次都要打开浏览器输入账号密码的烦恼. 1.工具 火狐 ...

  8. python校园网登录_python实现校园网自动登录的示例讲解

    python实现校园网自动登录的示例讲解 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  python实现校园网自动登录的示例讲解.txt ] (友情提示:右键点上 ...

  9. 删除python的注册表_Python操作注册表详细步骤介绍

    Python操作注册表步骤之1.打开注册表 对注册表进行操作前,必须打开注册表.在Python中,可以使用以下两个函数:RegOpenKey和RegOpenKeyEx.其函数原型分别如下所示. Reg ...

最新文章

  1. java io在文件结尾持续添加内容
  2. 中国移动物联网客户规模突破2600家 联网接入终端达2300万台
  3. 8天学通MongoDB——第二天 细说增删查改
  4. ICLR要搞深度生成模型大讨论,Max Welling和AAAI百万美元大奖得主都来了,Bengio是组织者之一...
  5. android网络质量,基于Android的移动通信网络质量信息系统的设计与开发
  6. 腾讯开源 DCache,分布式 NoSQL 存储系统
  7. iOS开发系列--音频播放、录音、视频播放、拍照、视频录制(转)
  8. 完数c++语言程序_C语言经典100题(19)
  9. word文档中插入特殊字符
  10. sqlite3_column
  11. 聊聊自己的高效学习方法~
  12. python教程视频 网盘-Python学习路线2019版(课程大纲+视频教程+网盘资源下载)...
  13. Payload与form表单提交区别
  14. wordpress音乐播放器插件–PoiPlayer
  15. JSP综合开发实例——清爽夏日九宫格(DIV+CSS布局)
  16. 用C语言实现布丰投针计算圆周率问题
  17. oracle数据库表空间容量查询及扩容
  18. vs2017c语言playsound,VS2010播放.WAW音频文件
  19. IDEA做数据库操作时的一个莫名其妙的错误
  20. Centos 7 安装 ifconfig命令

热门文章

  1. 移动端经常出现的兼容问题,谈谈移动端应用或者wap站的一些优化技巧和心得
  2. CodeForces - 1569B Chess Tournament
  3. 【手把手教你点亮 QQ手机腾训网 图标】[不用手机]
  4. 万国数据登陆纳斯达克 宣布首次公开发行股票定价
  5. 为什么说“ CPS联盟营销 ” 是性价比最高的推广方式?
  6. 计算机网络超级详细的总结(1)
  7. Java学习基础语法
  8. 空间光调制器(SLM)属于反射型模拟调制矩阵液晶模块
  9. python爬虫学习_junior
  10. 【啃书】《智能优化算法及其MATLAB实例》例9.3运用BP网络预测数据