python登录斗鱼_Python3自动登录web

1. 自动验证登录人人网

# 在linux python3上测试,注释部分为python2

import sys

import re

#import urllib2 # 分裂

import urllib.request

import urllib.parse

import urllib.error

import urllib

import requests

#import cookielib # 改名

import http.cookiejar

from imp import reload

## 这段代码是用于解决中文报错的问题,测试不需要解决

reload(sys)

#sys.setdefaultencoding("utf8")

#####################################################

# 登录人人,url on linux, 在windows上不一样路径

loginurl = 'http://www.renren.com/PLogin.do'

logindomain = 'renren.com'

class Login(object):

def __init__(self):

self.name = ''

self.passwprd = ''

self.domain = ''

self.cj = http.cookiejar.LWPCookieJar()

self.opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(self.cj))

urllib.request.install_opener(self.opener)

def setLoginInfo(self, username, password, domain):

'''设置用户登录信息'''

self.name = username

self.pwd = password

self.domain = domain

def login(self):

'''登录网站'''

loginparams = {'domain': self.domain, 'email': self.name, 'password': self.pwd}

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36'}

req = urllib.request.Request(loginurl, urllib.parse.urlencode(loginparams).encode(),headers=headers) # urlencode未,补充encode解决

response = urllib.request.urlopen(req)

self.operate = self.opener.open(req)

thePage = response.read().decode('utf-8')

print('....ok')

print(thePage) # 输出登录后的页面,可在登录情况下访问其他路径,待更新

if __name__ == '__main__':

userlogin = Login()

username = 'xxxxxxxxxx' # 自己已注册信息

password = 'xxxxxxx'

domain = logindomain

userlogin.setLoginInfo(username, password, domain)

userlogin.login()

# test: auto login renren is successful

2.跳过验证登录斗鱼

从已登录浏览器获取cookie

#! /usr/bin/env python

# coding:utf-8

import sys

import re

import urllib.request

import urllib.parse

import urllib.error

import urllib

import requests

import http.cookiejar

from imp import reload

# 登录斗鱼,url on linux

loginurl = 'http://www.douyu.com'

class Login(object):

def __init__(self):

self.cookie = 'PHPSESSID=ivfa1s4107t0alfhjam0uqe782; acf_auth=a9fcuuCP9SBb3BrrqQ9A1BhvULFXHuXErwIEBz3%2B1Z03nHEOQpTTrXbsAvOhVXLr6VVfbDiE3AidF2dhM%2BZF7kiC0Gavq7POQOD9%2F989RjcikKmMVkX1%2FTm2oM6Y; wan_auth37wan=b271a80d8a79PYq8jy%2B0tpeQfiWvzK%2FPUwRufQIbdWyMKvb3Lq9ZryTqYBmvg2skD8E75D013bEwmzvllveOl9gutaKVNLqxf%2FA6j5%2FVTnN99JxE; acf_uid=3065097; acf_username=auto_wvchV41AHL; acf_nickname=QQ1126671091; acf_own_room=0; acf_groupid=1; acf_phonestatus=1; acf_avatar=https%3A%2F%2Fapic.douyucdn.cn%2Fupload%2Favatar%2F003%2F06%2F50%2F97_avatar_; acf_ct=0; acf_ltkid=46846941; acf_biz=1; acf_stk=182fd8243b91e685; acf_devid=5eeb6c7e532f114b052d38806b085993; Hm_lvt_e99aee90ec1b2106afe7ec3b199020a7=1491506694,1492008230; Hm_lpvt_e99aee90ec1b2106afe7ec3b199020a7=1492008306; _dys_lastPageCode=page_live,page_home; _dys_refer_action_code=click_leftnavi_rank'

def login(self):

'''登录网站'''

#loginparams = {'domain': self.domain, 'email': self.name, 'password': self.pwd}

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36',

'cookie': self.cookie

}

req = urllib.request.Request(loginurl,headers=headers)

response = urllib.request.urlopen(req)

thePage = response.read().decode('utf-8')

print('....ok')

print(thePage)

if __name__ == '__main__':

userlogin = Login()

userlogin.login()

# test: auto login douyu by cookie

3.综合版

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值