1. 程式人生 > 程式設計 >Python模擬登入和登入跳轉的參考示例

Python模擬登入和登入跳轉的參考示例

# 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模擬登入和登入跳轉的參考示例的詳細內容,更多關於Python模擬登入和登入跳轉的資料請關注我們其它相關文章!