02-requests获取cookie练习

    由于好多网页登陆都需要进行图片认证,所以找了一个不需要认证的网站-曲谱论坛
    该网站登陆后会弹出一个提示框写有即将跳转,稍作几秒才会跳转,但请求指挥获取最开始的页面信息,并不会获取跳转之后的,所以需要再次请求
    方法主要为:requests.session(),MozillaCookieJar()
前者用来维持cookie和进行请求,后者用来将cookie存为文件并读取

import requests
from http.cookiejar import MozillaCookieJar

def get_cookie():
    url = 'https://bbs.qupu123.com/member.php?mod=logging&action=login&loginsubmit=yes&handlekey=login&loginhash=Ll2Cf&inajax=1'
    url2 = 'https://bbs.qupu123.com/forum.php'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36'
    }
    data = {
        'username': '',
        'password': ''
    }
    session = requests.session()    #to creat a new session
    session.cookies = MozillaCookieJar()    #to change value of cookie from the session to Mozialla
    resp = session.post(url, headers=headers, data=data)    #
    session.cookies.save(filename='cookies_txt1',ignore_expires=True,ignore_discard=True)
        #because type of cookie comingfrom the session has become Mozilla,so it has method of 'save'.
        #we can save cookie comingfrom session and being got from url asking for

#登录之后会出现一个即将跳转的弹框,而post的请求只能获取该情况下数据,并不会等待跳转之后再获取,所以还需要在请求一次
def use_cookie1():
    #url = 'https://bbs.qupu123.com/space-uid-543113.html'
    url = 'https://bbs.qupu123.com/forum.php'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36'
    }
    cookiejar = MozillaCookieJar()
    cookiejar.load('cookies_txt1', ignore_discard=True, ignore_expires=True) #loading cookie from cookies.txt and being saved in cookiejar
    session = requests.session()
    session.cookies = cookiejar     #transporting cookie from cookiejar to the session 
    resp = session.get(url,headers=headers)
    session.cookies.save(filename='cookies_txt2',ignore_discard=True,ignore_expires=True)
    #print(resp.text)

def use_cookie():
    url = 'https://bbs.qupu123.com/space-uid-543113.html'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.88 Safari/537.36'
    }
    cookiejar = MozillaCookieJar()
    cookiejar.load('cookies_txt2',ignore_expires=True,ignore_discard=True)
    session = requests.session()
    session.cookies = cookiejar
    resp = session.get(url,headers=headers)
    print(resp.text)

if __name__ == '__main__':
    get_cookie()
    use_cookie1()
    use_cookie()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值