python测试网页是否能正常登陆
#!/usr/bin/python
#encoding:utf-8
##实现网页的登陆检查
import HTMLParser
import urlparse
import cookielib
import string
import urllib
import urllib2
import string
import re
from jpype import *
from sms import Sms,Sms2
import os.path,sys
from django.core.management import setup_environ
ROOT_PATH = os.path.split(os.path.abspath(os.path.dirname(__file__)))
sys.path.insert(0,ROOT_PATH[0])
import settings
set = os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
ROOT_PATH = os.path.abspath(os.path.dirname(__file__)) class CheckWeb:
def CheckAnalytics(self):
try:
hosturl = 'https://****************'//链接地址都要用浏览器分析post数据
posturl = 'https://*****************'
#h = urllib2.urlopen(hosturl)
postData = {'email' : '*********','password' : '**************'}
postData = urllib.urlencode(postData)
request = urllib2.Request(posturl, postData)
response = urllib2.urlopen(request)
text1 = response.read()
return text1
except:
text1 = 'error'
return text1
def CheckAppcpa(self):
try:
#hosturl = 'http://www.****.com'
posturl = 'http://www.****.com'//浏览器分析
cj = cookielib.LWPCookieJar()//带cookie,这样登陆后可以实现随意跳转
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
#h = urllib2.urlopen(hosturl)
headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/25.0','Referer' : 'http://www.appcpa.co/appcpaLogin/login.jsp'}
postData = {'type' : '','email' : '****@yahoo.com','password' : '*****','checked' : 'false','tempppp' : '0.8753980695792317'}//postdata要浏览器分析出来
postData = urllib.urlencode(postData)
request = urllib2.Request(posturl, postData, headers)
response = urllib2.urlopen(request)
text2 = response.read()
return text2
except:
text2 = 'error'
return text2
def CheckGame(self):
#hosturl = 'http://www.*****.com/'
try:
posturl = 'http://www.***.com'
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
#h = urllib2.urlopen(hosturl)
postData = {'type' : '','email' : '****@********','password' : '*****','checked' : 'false','tempppp' : '0.8753980695792317'}
postData = urllib.urlencode(postData)
request = urllib2.Request(posturl, postData)
response = urllib2.urlopen(request)
text3 = response.read()
return text3
except:
text3 = 'error'
return text3
if __name__ == '__main__':
allweb = CheckWeb()
analy = allweb.CheckAnalytics()
if analy != '': //返回值
print 'no'
else:
print 'yes'
appcp = allweb.CheckAppcpa()
if appcp != 'success': //返回值
print 'no'
else:
print 'yes'
gam = allweb.CheckGame()
if gam != ''://返回值
print 'no'
else:
print 'yes' 火狐F12调试工具分析登陆过程和执行过程,实现浏览器模拟登陆网站,注意其实分析网站登陆过程很简单,在浏览器分析工具里可以抓取到数据传输过程,post的数据,我们仿造post数据,就可以实现成功登陆
python测试网页是否能正常登陆的更多相关文章
- python测试开发django-42.auth模块登陆认证
前言 在开发一个网站时,经常会用到用户的注册和登陆相关的账号管理功能,auth模块是Django提供的标准权限管理系统,可以提供用户身份认证, 用户组和权限管理. 像用户注册.用户登录.用户认证.注销 ...
- Python下载网页的几种方法
get和post方式总结 get方式:以URL字串本身传递数据参数,在服务器端可以从'QUERY_STRING'这个变量中直接读取,效率较高,但缺乏安全性,也无法来处理复杂的数据(只能是字符串,比如在 ...
- python抓网页数据【ref:http://www.1point3acres.com/bbs/thread-83337-1-1.html】
前言:数据科学越来越火了,网页是数据很大的一个来源.最近很多人问怎么抓网页数据,据我所知,常见的编程语言(C++,java,python)都可以实现抓网页数据,甚至很多统计\计算的语言(R,Matla ...
- Protobuf for Python测试保存和读取文件
安装pip, setuptools, and wheel 如果已经从python.org,安装啦Python 2 >=2.7.9 or Python 3 >=3.4 ,那么就已经有啦pip ...
- 关于python测试webservice接口的视频分享
现在大公司非常流行用python做产品的测试框架,还有对于一些快速原型产品的开发也好,很好地支持OO编程,代码易读.Python的更新挺快的,尤其是第三方库. 对于测试人员,代码基础薄弱,用pytho ...
- 用 Python 测试框架简化测试
用 Python 测试框架简化测试 摘要:本文将向您介绍了三种流行 Python 测试框架(zope.testing,py.test,nose)的基本特性,并讨论新一代的测试风格. 最近出现了行业级的 ...
- python测试框架总结
最流行的有unittest和nose 其他的请看http://wiki.python.org/moin/PythonTes... 中Unit Testing Tools部分 py.test unitt ...
- Python编写网页爬虫爬取oj上的代码信息
OJ升级,代码可能会丢失. 所以要事先备份. 一開始傻傻的复制粘贴, 后来实在不能忍, 得益于大潇的启示和聪神的原始代码, 网页爬虫走起! 已经有段时间没看Python, 这次网页爬虫的原始代码是 p ...
- 从零使用Python测试。Testing Using Python.
0. 写在前面 本人使用Python测试已有多年,略有些皮毛经验.每次有新员工入职,都会从头教一遍如何入门上手使用Python进行测试.趁这段有空,整理成文档,也好方便后续新员工学习.文章如有不妥之处 ...
随机推荐
- python笔记-用python解决小学生数学题【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/python/ 前几天有人在群里给小编出了个数学题: 假设你有无限数量的邮票,面值分别为 ...
- poj2184
Cow Exhibition Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 13578 Accepted: 5503 D ...
- 在MSSQL中将数字转换成中文
具体代码如下: CREATE FUNCTION [dbo].[fn_NumberToChinese] (@number INT) ) AS BEGIN ); ); ); SET @res = ''; ...
- UVA Live 6437 Power Plant 最小生成树
题意: 有许多油井和村庄什么的,让你使得这些村庄能连通一个油井就好了.第一行给你一个数字T代表有T组测试数据,第二行有 M , N , K ,M代表包括油井在内的村庄数,N 代表有N个 两两连通的地方 ...
- UVA 1151 Buy or Build MST(最小生成树)
题意: 在平面上有n个点,要让所有n个点都连通,所以你要构造一些边来连通他们,连通的费用等于两个端点的欧几里得距离的平方.另外还有q个套餐,可以购买,如果你购买了第i个套餐,该套餐中的所有结点将变得相 ...
- HDU 6270 Marriage (2017 CCPC 杭州赛区 G题,生成函数 + 容斥 + 分治NTT)
题目链接 2017 CCPC Hangzhou Problem G 题意描述很清晰. 考虑每个家庭有且仅有$k$对近亲的方案数: $C(a, k) * C(b, k) * k!$ 那么如果在第$1$ ...
- SRM 733 Div 1 爆零记
开场写easy(有预感要FST) 然后medium就卡住了. 我只知道$n$个点的生成树个数是$n^{n-2}$ 接下来直接狗带…… $Problem 250pts$ 水题,直接枚举然后记录答案(我大 ...
- 详解xml
xml xml简介 XML是一种可扩展标记语言 (Extensible Markup Language, XML).是一种可扩展的标记语言,XML重在数据交换,用于不同平台或者应用程序之间交换数据,存 ...
- java读取配置文件常用的四种方式
配置文件 放置在src下面 obj.properties className=com.store.order.dao.impl.OrderDaoImpl 方式一 @Test public void t ...
- 分布式协调服务Zookeeper
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...