好久没有学python了,反正各种理由吧(懒惰总会有千千万万的理由),最近网上学习了一下selenium,实现了一个简单的自动登录网页,具体如下。

1.安装selenium:

如果你已经安装好anaconda3,直接在windows的dos窗口输入命令安装selenium:

python -m pip install --upgrade pip

查看版本pip show selenium

3.将下载好的chromedriver.exe解压后放到指定目录

4.安装tesseract-ocr.exe 配置环境变量

5.安装pytesseract : pip install pytesseract

6.python脚本

思路:6.1登录页面按F12检查元素,获取用户名 密码 验证码 验证码图片的元素id

6.2.调用chromedriver

6.3.截取验证码图片的位置

6.4.pytesseract识别图片中字符,最后验证码识别为空!!???这个待解决

6.5.脚本如下:

from selenium import webdriver

from PIL import Image

import pytesseract

import os,time

chromedriver = "D:\Program Files\Anaconda3\selenium\webdriver\chromedriver.exe" #这里写本地的chromedriver 的所在路径

os.environ["webdriver.Chrome.driver"] = chromedriver #调用chrome浏览器

driver = webdriver.Chrome(chromedriver)

driver.get("http://xxxx.com") #该处为具体网址

driver.refresh() #刷新页面

driver.maximize_window() #浏览器最大化

#获取全屏图片,并截取验证码图片的位置

driver.get_screenshot_as_file('a.png')

location = driver.find_element_by_id('imgValidateCode').location

size = driver.find_element_by_id('imgValidateCode').size

left = location['x']

top = location['y']

right = location['x'] + size['width']

bottom = location['y'] + size['height']

a = Image.open("a.png")

im = a.crop((left,top,right,bottom))

im.save('a.png')

time.sleep(1)

#打开保存的验证码图片

image = Image.open("a.png")

#图片转换成字符

vcode = pytesseract.image_to_string(image)

print(vcode)

#填充用户名 密码 验证码

driver.find_element_by_id("staffCode").send_keys("username")

driver.find_element_by_id("pwd").send_keys("password")

driver.find_element_by_id("validateCode").send_keys(vcode)

#点击登录

driver.find_element_by_id("loginBtn").click()

总结

以上所述是小编给大家介绍的Python实现网页用户名 密码 验证码自动登录功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

python实现自动登录网页用户名密码_Python使用selenium实现网页用户名 密码 验证码自动登录功能...相关推荐

  1. python如何制作登录密码_python实战系列之模拟用户密码登陆系统(一)

    1. 前言 最近一直在研究学习python,基于python写一个模拟用户登陆验证的程序,大牛勿喷,欢迎各位同仁指导,学习!该程序使用函数式编程方式,将各个功能模块用函数实现,具体函数说明如下:get ...

  2. python自动抢票的原理_Python突破12306最后一道防线,实现自动抢票(附源码)

    一年一度的春运又来了,今年我自己写了个抢票脚本.使用Python+Splinter自动刷新抢票,可以成功抢到.(依赖自己的网络环境太厉害,还有机器的好坏) Splinter是一个使用Python开发的 ...

  3. python—简单数据抓取四(利用超级鹰的ocr识别图片验证码模拟登录超级鹰网站、利用百度云的ocr识别自如租房网价格图片获取到自如网的价格)

    学习目标: python学习二十四 -简单数据抓取四 学习内容: 1.利用超级鹰的ocr识别图片验证码模拟登录超级鹰网站 2.利用百度云的ocr识别自如租房网的价格图片,获取到自如网的价格数据 1.利 ...

  4. python网页元素定位_用Selenium进行网页元素定位以及常用的定位元素的方法

    用Selenium进行网页元素定位 一.前提条件: 下载.安装Selenium 二.编写定位网页元素的脚本(这里以定位百度网页的元素举例) 1.新建文本文档(可以用任意的文本编辑器,我这里用的是Pyc ...

  5. 登录页面html5 css3 js代码,H5+css3+js搭建带验证码的登录页面

    本文实例为大家分享了H5+css3+js搭建带验证码的登录页面,供大家参考,具体内容如下 login.html EasyBuy后台管理系统 .main_bar{ width:1350px; heigh ...

  6. python爬虫登录爱奇艺_python实现爱奇艺登陆密码RSA加密的方法示例详解

    前言 通过Python实现对大麦网近期全国演唱会数据进行爬取,通过分析,我们发现大麦网属于Python爬虫策略中"中等型"难度网站,演唱会数据封装在json文件中.因此,我们简单的 ...

  7. python微信网页登录不了了_Python实例---模拟微信网页登录(day1)

    src="https://login.weixin.qq.com/qrcode/{{ code }}"/>

  8. python自动填表格_Windows下使用python3 + selenium实现网页自动填表功能

    因为工作原因,需要将xls文件的数据录入到网上.因为数据量太多,而且以后时不时还需要用上,Ctrl+C,Ctrl+V不是长久之计.所以萌生一个想法,写一个工具,用于把xls文件的数据录入到网站上. 笔 ...

  9. python爬网页源码_python爬虫爬取网页的内容和网页源码不同?

    可以看到这里id为k_total的元素值不同,爬出来是1,网页源码是55. 附还未完成的代码:import requests from bs4 import BeautifulSoup import ...

  10. python中的绝对值符号怎么打_python – Matplotlib饼图:如何用绝对值替换自动标记的相对值...

    帮助(馅饼)说: *autopct*: [ *None* | format string | format function ] If not *None*, is a string or funct ...

最新文章

  1. Silverlight运行原理经典问答。
  2. NSGA-II入门C1
  3. Python 基础 - Day 5 Assignment - ATM
  4. 2019蓝桥杯国赛B组第九题
  5. webpack那些事儿
  6. input的属性AutoComplete——关闭浏览器文本框自动提示
  7. 启动访问kibana
  8. Nacos支持三种部署模式
  9. Linux内存管理:ELF文件格式
  10. 现代软件工程 第3-6章 作业
  11. MinGW —— Minimalist GNU for Windows、Cygwin —— Windows 下的类 unix 系统
  12. JavaScrip节点属性-访问子节点
  13. Vue导出Excel表格信息
  14. 详解两个队列实现一个栈(python实现——经典面试题)
  15. 技术总监面试有什么技巧
  16. gabor滤波器 opencv 实现
  17. cygwin 安装 ffplay
  18. 行为识别之slowfast
  19. 移动端 实现图片上传
  20. 机器人课程对孩子的用意

热门文章

  1. PHP服务缓存加速软件
  2. 详细关闭iiop方法_安卓手机卡顿清理垃圾是没用的,教你关闭几个设置,告别手机迟钝...
  3. python怎么排名次_2019:python第3次获得TIOBE最佳年度语言排名
  4. mobilenet cpu 加速_AMD锐龙5000系列CPU价格公布 哪款才是性价比之王_搜狐汽车
  5. js margin作用到父元素_子元素的 margin-top 传递给了父元素
  6. 电子计算机与多谋种,计算机国二MS_Office高级应用
  7. Introduction to Computer Networking学习笔记(十九):rate guarantees交换速度保证
  8. fdtd安装在服务器系统可以么,并行FDTD结合服务器分析电大电磁问题
  9. Linux环境中清除tomcat缓存
  10. 从Web抓取信息的几个常用方法