mikeluwen
#!/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\' : \'0\',\'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\' : \'0\',\'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 != \'1\': //返回值
               print \'no\'
       else:
               print \'yes\'
       appcp = allweb.CheckAppcpa()
       if appcp != \'success\': //返回值
               print \'no\'
       else:
               print \'yes\'
       gam = allweb.CheckGame()
       if gam != \'1\'://返回值
               print \'no\'
       else:
               print \'yes\'

火狐F12调试工具分析登陆过程和执行过程,实现浏览器模拟登陆网站,注意其实分析网站登陆过程很简单,在浏览器分析工具里可以抓取到数据传输过程,post的数据,我们仿造post数据,就可以实现成功登陆

 

分类:

技术点:

相关文章: