前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用splinter实现163邮箱的自动

用splinter实现163邮箱的自动

作者头像
py3study
发布2020-01-02 15:02:14
8190
发布2020-01-02 15:02:14
举报
文章被收录于专栏:python3

简述

本篇文章简述了使用python的splinter实现163邮箱的自动登录,介绍了splinter自动化测试工具的使用,以及mac环境下的配置;

splinter简介

splinter,它是用来做自动化测试的,可以用Python程序模拟人操作浏览器,比如点击按钮,输入账号和密码,cookie操作等

官方文档

基本环境的安装(mac下)

  1. 在python官方网站在官网下载python2.7
  2. 安装pip,pip是常用的Python包管理工具,类似于Java的maven。用python的同学,都离不开pip。 $ sudo easy_install pip
  3. 使用pip安装splinter,splinter需要python2.7,不支持Python3.5 $ pip install splinter $ pip uninstall splinter # 删除时使用
  4. 安装chrome所需的驱动 $ brew install chromedriver

所需代码

配置好相关环境就可以开始写代码了,代码很简单,对照官方参考手册很快就能玩起来,其实相比之下感觉配置环境反而复杂多了

代码语言:javascript
复制
from splinter import Browser

browser = Browser('chrome')
browser.visit('https://mail.163.com')

# 163的登录框在iframe中,所以无法使用dom查找,可以splinter提供的相关API

with browser.get_iframe('x-URS-iframe') as iframe:
 iframe.find_by_name('email').fill('yourName')
 iframe.find_by_name('password').fill('yourPassWord')
 iframe.find_by_id('dologin').click()
 iframe.find_by_text('继续登录').click()

验证码的识别

上述代码实现了163的简单登录,但是对于验证码便无能为力了,我们可以使用以下开源工具来进行简单的验证码识别

  • Tesseract是一款谷歌公司正在维护的开源的光学字符识别(OCR)引擎
  • pytesseract是对Google Tesseract的一层python封装,更方便的调用Tesseract
  • PIL:Python Imaging Library,是Python平台的图像处理库。 PIL官方只有32位的安装文件,64位安装时会提示找不到python的安装路径。网上有非官方的64位库(官方源码编译版),叫做pillow。Pillow是PIL的替代版本。

安装运行环境

代码语言:javascript
复制
brew install tesseract
pip install pytesseract
pip install Pillow

快速开始

进入你的项目目录中,执行以下代码:

代码语言:javascript
复制
from PIL import Image
import pytesseract

im = Image.open('cp.jpg')
print (pytesseract.image_to_string(im)) # 会输出验证码图片转成的文字,比如abcd

运行后发现,简单的验证码可以识别(无粘连),复杂的仍然识别不了.需要进一步的处理才行.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/10/09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简述
  • splinter简介
  • 基本环境的安装(mac下)
  • 所需代码
  • 验证码的识别
相关产品与服务
验证码
腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档