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

一、安装selenium

二、下载谷歌浏览器驱动

1、去http://chromedriver.storage.googleapis.com/index.html下载chromedriver.exe(根据chrome的版本下载对应的)

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

三、安装图片文字OCR识别-tesseract-ocr4.00.00

1、软件下载网址https://github.com/tesseract-ocr/tesseract/wiki/4.0-with-LSTM#400-alpha-for-windows

选择4.0.0-alpha for Windows下面Windows Installer made with MinGW-w64 from UB Mannheim,点击UB Mannheim进入另一网页。

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMTk2NDkzLzIwMTgwNy8xMTk2NDkzLTIwMTgwNzI4MTA1NzUyNzcxLTE5Mzc3OTg3MTMucG5n.jpg

2、进到网址:https://github.com/UB-Mannheim/tesseract/wiki

点击tesseract-ocr-setup-4.0.0-alpha.20170804.exe,下载4.0版本的软件

根据系统版本不同下载32位或64位的版本

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMTk2NDkzLzIwMTgwNy8xMTk2NDkzLTIwMTgwNzI4MTA1ODA5NDQzLTk2MDQ0ODkzOS5wbmc=.jpg

3、找到下载的文件,单击安装

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMTk2NDkzLzIwMTgwNy8xMTk2NDkzLTIwMTgwNzI4MTA1ODIxMDk4LTE0OTM3NzM4OTYucG5n.jpg

4、记住安装路径:

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMTk2NDkzLzIwMTgwNy8xMTk2NDkzLTIwMTgwNzI4MTA1ODMxMzA1LTE3ODYyOTE1NTMucG5n.jpg

5、复制安装地址D:\Program Files (x86)\Tesseract-OCR 添加到系统环境变量中。

进入控制台输入tesseract -v进行测试安装成功与否

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMTk2NDkzLzIwMTgwNy8xMTk2NDkzLTIwMTgwNzI4MTA1ODQxNDU5LTYxMzY3NTM1Ni5wbmc=.jpg

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMTk2NDkzLzIwMTgwNy8xMTk2NDkzLTIwMTgwNzI4MTA1ODU2MDIzLTI3Mzc3MDk4My5wbmc=.jpg

四、安装pytesseract

以上都做好后,开始安装pytesseract ,进入DOS环境输入:pip install pytesseract进行安装

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMTk2NDkzLzIwMTgwNy8xMTk2NDkzLTIwMTgwNzI4MTA1OTEzNzU5LTUwMzk1ODgxMC5wbmc=.jpg

安装成功:

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMTk2NDkzLzIwMTgwNy8xMTk2NDkzLTIwMTgwNzI4MTA1OTI2NjU1LTE1MTUzNDU5ODgucG5n.jpg

五、编写python代码

未完待续。。。。。。

基于localStorge开发登录模块的记住密码与自动登录

前沿||我是乐于分享,善于交流的鸟窝 先做写一篇关于登录模块中记住密码与自动登录的模块.鸟窝微信:jkxx123321 关于这个模块功能模块的由来,这是鸟大大的处女秀,为什么这么说呢?一天在群里,一个 ...

php中实现记住密码下次自动登录的例子

这篇文章主要介绍了php中实现记住密码下次自动登录的例子,本文使用cookie实现记住密码和自动登录功能,需要的朋友可以参考下 做网站的时候经常会碰到要实现记住密码,下次自动登录,一周内免登陆,一个月 ...

Python+fiddler(基于Cookie绕过验证码自动登录)

案例:使用Cookie绕过百度验证码自动登录账户 步骤: 1.浏览器进入百度首页,点击登录按钮,输入相关信息(注意:暂时不要点击登录按钮) 2.进入fiddler,首先获取证书,Tools--> ...

vmware vcenter orchestrator configuration提示“用户名密码错误或登录失败超过次数被锁定”

首次登录,使用默认用户密码登录vmware/vmware vmware vcenter orchestrator configuration提示"用户名密码错误或登录失败超过次数被锁定&qu ...

C# Winform 登录中的忘记密码及自动登录

本地保存登录账号实现忘记密码及自动登录 #region 删除本地自动登录及记住密码信息 /// /// 删除本地自动登录及记住密码信息 /// ...

python利用selenium库识别点触验证码

利用selenium库和超级鹰识别点触验证码(学习于静谧大大的书,想自己整理一下思路) 一.超级鹰注册:超级鹰入口 1.首先注册一个超级鹰账号,然后在超级鹰免费测试地方可以关注公众号,领取1000积分 ...

【Python练习】文件引用用户名密码登录系统

一.通过txt文件引入用户名密码 1 #coding=utf-8 from selenium import webdriver #from selenium.common.exceptions imp ...

python作业设计:输入用户名密码,认证成功后显示欢迎信息,输错三次后锁定

作业需求: 1.输入用户名密码 2.认证成功后显示欢迎信息 3.输错三次后锁定实现思路: 1.判断用户是否在黑名单,如果在黑名单提示账号锁定. 2.判断用户是否存在,如果不存在提示账号不存在. 3.判 ...

WampServer PHP服务配置方法(允许外部访问、phpmyadmin设置为输入用户名密码才可登录等)

WampSever 指的是apache + mySQL + PHP 三合一套装,第一字母W,是指用于windows系统,我用的是2.0f版.用于Linux系统的,是LampSever,第一字母是L.请 ...

随机推荐

Atitit  五种IO模型attilax总结 blocking和non-blocking synchronous IO和asynchronous I

Atitit  五种IO模型attilax总结 blocking和non-blocking synchronous IO和asynchronous I   1.1. .3 进程的阻塞1 1.2. 网络 ...

Mysql数据库操作系统及配置参数优化

数据库结构优化 表的水平拆分常用的水平拆分方法为:1.对 customer_id进行 hash运算,如果要拆分成5个表 则使用mod(customer_id,5)取出0-4个值2.针对不同的 hash ...

区别ie8和ie9的方法

众所周知 区别ie6~8的方法是: width:10px;//chrome width:10px\9;//ie8+ *width:10px;//ie7 _width:10px;//ie6 区别ie8以 ...

HTML+CSS笔记 表格,超链接,图片,表单

表格 给表格加入CSS样式,添加表格边框 语法:

NYOJ-1057 寻找最大数(三)(贪心)

寻找最大数(三) 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 给出一个整数N,每次可以移动2个相邻数位上的数字,最多移动K次,得到一个新的整数. 求这个新的整数的 ...

huffman压缩解压文件【代码】

距离上次写完哈夫曼编码已经过去一周了,这一周都在写huffman压缩解压,哎,在很多小错误上浪费了很多时间调bug.其实这个程序的最关键部分不是我自己想的,而是借鉴了某位园友的代码,但是,无论如何,自 ...

[JUC-4]ThreadPoolExecutor源码分析

相关博文: https://segmentfault.com/a/1190000008693801 https://www.jianshu.com/p/fa1eac9710c8 //构造器1 publ ...

SharePreferences

SharePreferences是一种轻量级的数据存储方式,它是以key-value的形式保存在 data/data//shared_prefs 下的xml文件中 ...

bzoj千题计划215:bzoj1047: [HAOI2007]理想的正方形

http://www.lydsy.com/JudgeOnline/problem.php?id=1047 先用单调队列求出每横着n个最大值 再在里面用单调队列求出每竖着n个的最大值 这样一个位置就代表 ...

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 下面是实现自动登录验证码的163邮箱并发送邮件的一种方法: 首先,你需要安装以下库: ``` pip install selenium pip install pillow ``` 然后,你需要安装Chrome浏览器的驱动程序,并将其路径添加到系统环境变量中。 接下来,可以使用以下代码来实现自动登录: ``` from selenium import webdriver from selenium.webdriver.common.keys import Keys import time from PIL import Image # 启动浏览器 browser = webdriver.Chrome() browser.get('http://mail.163.com/') # 等待5秒,给用户手动登录的机会 time.sleep(5) # 找到登录按钮,点击 login_button = browser.find_element_by_id('lbNormal') login_button.click() # 找到用户名输入框,并输入用户名 username = browser.find_element_by_name('email') username.send_keys('your_username') # 找到密码输入框,并输入密码 password = browser.find_element_by_name('password') password.send_keys('your_password') # 找到验证码图片,并保存到本地 verify_code_element = browser.find_element_by_id('vcodeImg') verify_code_location = verify_code_element.location verify_code_size = verify_code_element.size browser.save_screenshot('screenshot.png') x = verify_code_location['x'] y = verify_code_location['y'] width = verify_code_size['width'] height = verify_code_size['height'] # 截取验证码图片 im = Image.open('screenshot.png') im = im.crop((x, y, x + width, y + height)) im.save('verify_code.png') # 打开验证码图片,手动输入 ### 回答2: 要实现自动登录验证码的163邮箱,并发送一封邮件给a.163.com,可以使用Pythonselenium库以及邮件发送库(如smtplib)来完成。 首先,需要安装相应的库,在命令行中输入以下命令: ``` pip install selenium pip install smtplib ``` 接下来,编写代码实现自动登录邮箱功能。首先,导入必要的库和模块: ```python from selenium import webdriver from selenium.webdriver.common.keys import Keys import time ``` 然后,初始化WebDriver并打开163邮箱登录页面: ```python driver = webdriver.Chrome() # 需要安装Chrome浏览器驱动 driver.get('https://mail.163.com/') ``` 找到登录框中的用户名密码输入框,并输入相应的账号和密码: ```python driver.switch_to.frame(0) # 切换到iframe username = driver.find_element_by_name('email') password = driver.find_element_by_name('password') username.send_keys('your_username') # 替换为你的邮箱账号 password.send_keys('your_password') # 替换为你的邮箱密码 ``` 此时页面会弹出验证码窗口,为了自动化,我们可以手动输入验证码并点击登录,也可以使用OCR技术自动识别验证码,这里我们选择手动输入验证码的方法: ```python verification_code = input('请输入验证码:') driver.find_element_by_id('un-login').send_keys(Keys.ENTER) # 点击登录 ``` 等待一段时间,使页面完全加载,然后进入写信页面: ```python time.sleep(5) # 等待页面加载 driver.find_element_by_id('_mail_component_42_42').click() # 进入写信页 ``` 找到收件人输入框,输入收件人邮箱地址(a.163.com): ```python driver.find_element_by_class_name('nui-editableAddr-ipt').send_keys('a.163.com') ``` 接下来,我们需要填写邮件的主题和内容,并发送邮件: ```python driver.find_element_by_class_name('nui-ipt-input').send_keys('邮件主题') # 替换为你的邮件主题 time.sleep(2) # 等待邮件主题输入框失去焦点 driver.switch_to.frame(driver.find_element_by_class_name('APP-editor-iframe')) # 切换到内容输入的iframe driver.find_element_by_tag_name('body').send_keys('邮件内容') # 替换为你的邮件内容 driver.switch_to.default_content() # 切回主页面 driver.find_element_by_class_name('nui-toolbar-item-send').click() # 点击发送按钮 ``` 最后,关闭浏览器: ```python time.sleep(2) # 等待发送成功弹窗消失 driver.quit() ``` 以上就是使用Python实现自动登录验证码的163邮箱,并发送一封邮件给a.163.com的代码。根据你的实际情况,需要进行相应的参数替换和验证步骤的修改。 ### 回答3: 要实现自动登录验证码的163邮箱并发送邮件给a.163.com,可以使用Pythonselenium库和smtplib库。以下是一个示例代码: ```python from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By import time import smtplib from email.mime.text import MIMEText # 启动浏览器 driver = webdriver.Chrome() driver.get("https://mail.163.com") # 输入用户名密码 username_input = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, 'input[name="username"]'))) username_input.send_keys("your_username") password_input = driver.find_element_by_css_selector('input[name="password"]') password_input.send_keys("your_password") # 等待用户输入验证码 time.sleep(30) # 点击登录按钮 login_button = driver.find_element_by_css_selector('a[data-action="login"]') login_button.click() # 等待登录成功 WebDriverWait(driver, 10).until(EC.title_contains("网易邮箱")) # 发送邮件 smtp_server = "smtp.163.com" sender_email = "your_email@163.com" receiver_email = "a@163.com" subject = "Test Email" message = "This is a test email." msg = MIMEText(message) msg["Subject"] = subject msg["From"] = sender_email msg["To"] = receiver_email smtp = smtplib.SMTP(smtp_server) smtp.login(sender_email, "your_email_password") smtp.sendmail(sender_email, receiver_email, msg.as_string()) smtp.quit() # 关闭浏览器 driver.quit() ``` 需要注意的是,此代码中的部分参数需要你自己填写,如邮箱用户名密码、邮件内容和发件人邮箱密码等。另外,验证码需要人工输入,代码会自动等待30秒让你输入验证码登录

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值