Python3 登陆网页并保持cookie

网页登陆

网页登陆的原理都是,保持一个sessionid在cookie然后,根据sessionid在服务端找到cookie进行用户识别

python实现

由于python的简单以及丰富的类库是开发网络爬虫的理想选择,下面是python3进行网页登陆和访问的代码

import urllib          #urllib包用于http请求
import http.cookiejar  #cookiejar是用来保存cookie
import socket          #socket用于控制网络连接(这里用于控制超时)

cookie = http.cookiejar.CookieJar()                 #创建cookiejar用于保存cookie 
cjhdr  = urllib.request.HTTPCookieProcessor(cookie) #创建cookiehandler用于管理http的cookie
opener = urllib.request.build_opener(cjhdr)         #将cookiehandler注册并生成一个opener之后使用这个opener就可以自动保存cookie
socket.setdefaulttimeout(5)             #设置全局timeout

loginUrl = "http://XXXX:XX/XX"  
loginPostData = urllib.parse.urlencode({'USERNAME': 'myname', 'PASS': 'mypass‘}).encode('utf-8') 
loginRequest = urllib.request.Request(loginUrl, loginPostData,method='POST');   #创建post请求
response = opener.open(loginRequest)                                #请求request
print( response.read().decode())                            #输出返回

#现在再往该domain发送请求就会带有cookie了

get_url = 'http://XXXX:XX/YY'                               #同一域名的url
get_request = urllib.request.Request(get_url)                               #创建request
get_response = opener.open(get_request)                             #请求request

转载于:https://www.cnblogs.com/resentment/p/6059963.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值