转自:https://www.cnblogs.com/yin-tao/p/7244082.html 我使用的是python2.7.13+selenium ps:几天之前,我曾多次尝试写这段代码,但是在点击写信的步骤时失败了,我想我的问题应该大致是这几点: 1.写信按钮不能直接定位到,同时它的父目录id是动态的,我当时使用xpath定位到了这个动态的id,所以失败是必然的,那么就需要我们继续寻找向上寻找父目录,即多层级的xpath(建议多使用xpath/css)成功率会更高,因为层级越少,那么出现…
pycharm一些快捷键: ' ctrl ' +' / ' :注释 ' Tab ' :同时缩进 ' shift ' +' Tab ' :左移 一次缩进 本文webinfo.txt路径:C:\Python27\New Folder\case\webinfo.txt userinfo.txt路径:C:\Python27\New Folder\case\userinfo.txt webinfo内容: url=https://mail.163.com/ account_name=email pwd_na…
Selenium 自动登录网站.截图及 Requests 抓取登录后的网页内容.一起了解下吧. Selenium: 支持 Web 浏览器自动化的一系列工具和库的综合项目. Requests: 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用. 为什么选择 Selenium 实现自动登录? Selenium 实现,相当于模拟用户手动打开浏览器.进行登录的过程. 相比直接 HTTP 请求登录,有几个好处: 避免登录窗口的复杂情况(iframe, ajax 等),省得分析细节. 用…
项目结构如下: 要求python3.0 selenium3.0 下面是代码: appModubles:addContactPersonActtion.py和LoginAction.py addContactPersonActtion.py再次对添加联系人进行封装 # encoding = utf-8 from pageObjects.HomePage import HomePage from pageObjects.AddressBookPage import HomePage as Page…
Python代码如下: # coding=utf-8 from selenium import webdriver from time import sleep from random import randint def auto_throw(username, password): """自动循环扔瓶子""" driver = webdriver.Chrome() driver.get("https://mail.qq.com&qu…
from common import MyRequests,LoggerUntil,handle_exception myRequests.update_headers({ 'Accept':'text/javascript',}) ##这个地方加入accept了,主要是在邮件提取那里,不加入这个返回的是xml格式,加入后返回json格式,这样在提取方面更容易一些. url = 'https://mail.163.com/entry/cgi/ntesdoor?funcid=loginone&la…
找了几个,只有这个靠谱,用的是httpclient4,另外还需要commons-lang和jsoup包 http://jsoup.org/ http://www.oschina.net/code/snippet_128625_12592?p=2 ———————————————————————————————————————————————————————————— 如题: 支用用jsoup解析页面非常方便,当时jsoup做登录就比较麻烦,反正我不知道怎么做. HttpClient做登录比较方便因…
以前使用qq邮箱.163服务器发送邮件,帐号直接使用密码,现在不行了,得使用授权码,简单记录下 1.首先开通POP3/SMTP服务,qq邮箱——帐号——设置,找到POP3/SMTP点开启,输入短信会有授权码,复制好,发送邮件需要用到 2.下载phpmailer:https://github.com/PHPMailer/PHPMailer 下载后只取用到的: class.phpmailer.php.class.phpmaileroauth.php.class.pop3.php.class.smtp…
在之前163邮箱注册的时候默认开通SMTP服务的,之后需要自己手动开始. 在配置的时候服务器的地址固定 用户名称就是你的邮箱 密码需要注意的是有的是你邮箱的密码,如果不对需要填写你的授权码!…
脚本内容:#encoding=utf-8#author-夏晓旭from selenium import webdriverimport timefrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.common.by import Byfrom selenium.common.exceptions import TimeoutException, NoSuchElementExceptioni…
1.关于selenium  Selenium的主要功能包括:(1)测试与浏览器的兼容性:测试应用程序能否兼容工作在不同浏览器和操作系统之上.(2)测试系统功能:录制用例自动生成测试脚本,用于回归功能测试或者系统用例说明.简而言之,Selenium 就是一款可以录制用户操作, 帮助Web测试人员简化重复劳动的工具.  2.selenium安装 win+r,进入cmd, 然后输入pip install selenium,等一会就安装好了. 3.webdriver原理 WebDriver是按照Serv…
前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时继续介绍Selenium+Python官网Locating Elements部分内容.        希望该篇基础性文章对你有所帮助,如果有错误或不足之处,请海涵~        [Python爬虫] 在Windows下安装PhantomJS和CasperJS及入门介绍(上)        [Python爬虫…
1:注册一个163邮箱,http://mail.163.com 调用发送邮件代码,查询smtp.163.com,作为发送邮件的服务器ip,类似的邮箱服务器应该也可以. MailSenderInfo mailInfo = new MailSenderInfo(); mailInfo.setMailServerHost("121.195.178.51");//邮件服务器ip地址.smtp.163.com, mailInfo.setMailServerPort("25")…
在进入正题这前先看下网易(163)邮箱的服务器地址和端口号 类型 服务器名称 服务器地址 SSL协议端口号 非SSL协议端口号 收件服务器 POP pop.163.com 995 110 收件服务器 IMAP imap.163.com 993 143 发件服务器 SMTP smtp.163.com 465/994 25 http://help.163.com/10/0731/11/6CTUBPT300753VB8.html 一.前期准备   使用网易邮箱,当然要注册个账号,这个就不用我多说了,自…
1.Selenium实现自动化,需要定位元素,以下查看163邮箱的登录元素 (1)登录(定位到登录框,登录框是一个iframe,如果没有定位到iframe,是无法定位到账号框与密码框) 定位到邮箱框(name='email') 定位到密码框(name='password') 定位到登录按钮(id="dologin") 2.代码实现 #coding=utf-8 import time from selenium import webdriver broswer = webdriver.I…
最近在看python网络爬虫,于是我想自己写一个邮箱和QQ空间的自动登录的小程序, 下面以登录163邮箱和QQ空间和为例: 了解到在Web应用中经常会遇到frame/iframe 表单嵌套页面的应用,WebDriver 只能在一个页面上对元素识别与定位,对于frame/iframe 表单内嵌页面上的元素无法直接定位.这时就需要通过switch_to.frame()方法将当前定位的主体切换为frame/iframe 表单的内嵌页面中 # -*- coding: utf-8 -*-""&q…
摘自https://www.cnblogs.com/sanzangTst/p/7472556.html 前面几篇内容一直讲解Selenium Python的基本使用方法.学习了什么是selenium:学习了selenium Python的安装环境:学习了八种元素定位:学习了xpath定位:学习了浏览器的操作:前面几篇都是讲一些基础的定位方法,没具体的案例,可能看起来比较苍白枯燥,没有给出具体的案例.这篇内容就写一个简单实例来看一下前面的基本方法在实例的应用. 我们以登录网易邮箱为例来讲解Sele…
#练习:登录163邮箱然后新建一个联系人 import unittest import time from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver import ActionChains from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.su…
思路:使用python自带的unittest单元测试框架测试163邮箱登录成功的case import unittestfrom selenium import webdriverimport time#定义登录类,登录相关的case都可以在这里 class LoginCase(unittest.TestCase): #每个用例开始前的准备 def setUp(self): print("开始测试") self.dr=webdriver.Chrome() self.dr.get(&qu…
1.场景 很多时候登录操作是比较复杂的,因为存在各种反爆破操作,以及为了安全性提交数据都会存在加密.如果要完全模拟代码去实现登录操作是比较复杂,并且该网站后续更新了登录安全相关功能,那么登录的模拟操作又得修改.但是通过selenium模拟人为登录得操作是永远不会过时.因此一个好得方案就是通过selenium模拟登录,然后拿到可用得Cookie通过requests进行后续得模拟请求. 2.实现代码 import time, requests from selenium import webdriv…
学习了Python语言一段时间后,在公司的项目里也使用到了python来写测试脚本,一些重复的操作都使用脚本来处理了.大大的提高工作效率,减少了一些手工重复的操作. 以下是使用unittest框架写的简单的邮箱自动登录实例,分享给大家,有不足之处可留言交流. 由于QQ邮箱登录的页面使用iFrame的设计,在开始写的时候因为找不到切换的方法,导致代码老是报错. driver.switch_to.frame("login_frame") 在打开QQ邮箱首页后,需要先切换到login_fra…
今天发现之前的登录163邮箱脚本定位不到iframe了,原因是iframe拼接了动态ID,修改后的脚本如下: from selenium import webdriver driver = webdriver.Firefox()driver.maximize_window() driver.get('http://mail.163.com') driver.find_element_by_id('switchAccountLogin').click()iframe = driver.find_e…
自动化发送163邮件 方法一: import time import datetime from selenium import webdriver from selenium.webdriver.support.wait import WebDriverWait # 等待页面加载某些元素 from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by impor…
#python3.4+selenium3.5+chrome版本 63.0.3239.132+chrome驱动chromedriver.exe #实现自动登录百度 from selenium import webdriver from time import sleep #新建webdriver对象 driver = webdriver.Chrome() driver.maximize_window() driver.get('https://passport.baidu.com/v2/?logi…
缘起 一直在浏览器里用Katalon插件录制一些常用的流程,以减少重复操作,也就自然而然想自己搞搞自动化测试,但无奈登录一关跨不过去,就无法串起来.(不想让开发添加万能验证码的功能)首先想到的是识别验证码.用selenium模拟登录时,验证码一关实在过不了.无论怎么处理验证码图片,tesseract识别率还是太低,完全不可用.看到有机器学习提高验证码识别率的例子,但觉得实在太麻烦,就没有研究,搁置了一段时间.最近发现在登陆时,后台发起了2个请求.先是Get_VerifyCode,获得verify…
学习python下使用selenium2自动测试第6天,参数化编程这节课花了两天时间. 本次编程主要时间是花在熟悉python上 知识点or坑点: 1.读取txt.xml.csv等文件存储的账号.密码 txt文件格式,逗号分割(也可使用其他符号): www.126.com,user1,pwd1 www.qq.com,user2,pwd2 www.163.com,user3,pwd3 user_file = open('user_info.txt','r') lines = user_file.r…
注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6812973124141711876/ 先创建一个maven的普通项目 添加依赖,附在文档末尾 其中几个注意的地方 主方法入口 有一个包下载不下来,手动导入下 准备一个配置文件和主方法类 针对配置文件编写一个类用来接收配置文件中的配置信息 再创建一个测试类 配置类中的属性 加载配置信息 其它get/set.toString方法自动生成就可以了 配置文件的信息 其中password这个不是你邮箱的地址,而是你163…
javaMail使用网易163邮箱或者是126或者是网易其他邮箱报535 Error: authentication failed javax.mail.AuthenticationFailedException: 535 Error: authentication failed at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:648) at com.sun.mail.smtp.SM…
// '); code = code.replace(/&/g, '&'); return code; }; var runCode = function (code) { if (code != "") { var newwin = window.open('', "_blank", ''); newwin.document.open('text/html', 'replace'); newwin.opener = null; newwin.doc…
最近学习C#网络编程中,想实现网页自动登录并提交GET/POST信息,再实现循环登录不断发送报文给服务器,服务器发送消息给客户端记录能登录的账户和密码,做到后面实现绕过验证码.动态抓取登录位置等,但由于资料很少.进度缓慢,下面这篇文章仅供大家交流阅读. 也许你可能看过一篇文章关于C#实现POST提交方式中三种提取网页HTML的方法:WebBrowser.WebClient.HttpWebRequest.我也看了很多人的博客,尤其是关于WebBrowser和HttpWebRequest方法,但能力…