发布时间:2019-09-12 07:58:26编辑:auto阅读(2387)
# coding:utf-8
import urllib
import urllib2
import cookielib
from bs4 import BeautifulSoup
# 设置登录url
login_url = "******************"
# 创建登录类
class Login(object):
    #初始化
    def __init__(self):
        self.username = ''
        self.password = ''
        # 验证码
        self.rode = ''
        #设置cookie
        self.cj = cookirlib,LWPCookieJar()
        self.opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(self.cj))
        urllib2.install_opener(self.opener)
    def setLoginInfo(self, username, passwoed ,rode):
        """设置登录用户信息"""
        self.username = username
        self.password = password
        self.rode = rode
    def login(self):
        """"模拟登录"""
        login_data = {'username': self.username, 'password': self.password, 'rode': self.rode}
        headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2859.0 Safari/537.36'}
        req = urllib2.Request(login_url, data=urllib.urlencode(login_data), headers=headers)
        response = urllibs.urlopen(req)
        # 加cookie, 自动保存seissionid,做后续跳转
        self.operate = self.opener.open(req)
        # 通过BeautifulSoup获取网页内容
        soup = BeautifulSoup(response, 'lxml')
        # 获取网页的content
        data = soup.select('#content')
        if data:
            print u'模拟登录成功!', data
        print u'模拟登录失败!'
   def skip(self, skip_url):
       """
       模拟登录成功后,跳转网页
       ----------------------------
       传递跳转网页的url
      """
       headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2859.0 Safari/537.36'}
       req = urllib2.Request(skip_url, headers=headers)
       response = urllib2.urlopen(req)
       soup = BeautifulSoup(response, 'lxml')
       # 获取跳转后网页的title
       print soup.title.string
if __name__ == "__main__":
    userlogin = Login()
    username = '***********'
    password = '***********'
    rode = '***********'
    # 执行模拟登录方法
    userlogin.login()
    # 执行模拟登录成功后网页跳转方法
    user_login.skip(skip_url = '***************') 
上一篇: Python调用Matlab的混合编程
下一篇: python list 参数传递方式
 51192
 50604
 41229
 38048
 32511
 29417
 28278
 23132
 23092
 21425
 1481°
 2197°
 1820°
 1749°
 2062°
 1811°
 2494°
 4187°
 4049°
 2891°