精华内容
下载资源
问答
  • Python携带cookie的会话

    2020-02-08 15:18:07
    cookie在很多情况下是用来对应的身份验证。...在python中有session类可以提供类似模拟: 通过调用request来提供session,再用GET或POST来执行操作。 以百度为例,演示如下: import requests url = "https:...

    cookie在很多情况下是用来对应的身份验证。比如说访问某些页面(登陆页面)时,会通过Set-Cookie设置Cookie值到客户端,以便下一次访问自动提交Cookie进行身份验证。

    在python中有session类可以提供类似模拟:
    通过调用request来提供session,再用GET或POST来执行操作。

    以百度为例,演示如下:

    import requests
    
    url = "https://www.baidu.com"
    s = requests.session()
    
    r = s.get(url) //使用r进行获取
    print(r.cookies)  //输出cookie
    print(r.request.headers)  //输出请求报名头
    

    返回结果如下:

    <RequestsCookieJar[<Cookie BDORZ=27315 for .baidu.com/>]>
    {'Connection': 'keep-alive', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'User-Agent': 'python-requests/2.22.0'}
    
    

    可以看见在请求报名头中没有出现cookie的值,这是由于我们在请求之后百度会返回对应的cookie值,BDORZ=27315。在下次使用当前会话进行访问才会携带cookie值

    import requests
    
    url = "https://www.baidu.com"
    s = requests.session()
    
    r = s.get(url)
    print(r.cookies)
    print(r.request.headers)
    
    r1 = s.get(url)
    print(r1.request.headers)
    
    

    结果:

    <RequestsCookieJar[<Cookie BDORZ=27315 for .baidu.com/>]>
    {'Connection': 'keep-alive', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'User-Agent': 'python-requests/2.22.0'}
    {'Connection': 'keep-alive', 'Cookie': 'BDORZ=27315', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'User-Agent': 'python-requests/2.22.0'}
    

    可以发现报名头有了cookie值。

    展开全文
  • 下面记录了几种携带cookie的方法 # coding=utf-8 import requests s = requests.Session() login_data = {'username': 'teacher', 'password': 'teacher'} # 方法1 # resp1 = s.post('htt...

    有时会遇到爬取的页面需要登录,这就要带上cookie了。

    下面记录了几种携带cookie的方法

    # coding=utf-8
    import requests
    
    s = requests.Session()
    login_data = {'username': 'teacher', 'password': 'teacher'}
    # 方法1
    # resp1 = s.post('http://192.168.2.132/login/', data=login_data)
    # r = s.get('http://192.168.2.132/personal_live/')
    
    # 方法2
    # resp1 = requests.post('http://192.168.2.132/login/', data=login_data)
    # print('cookie:' + str(resp1.cookies))
    # r = requests.get('http://192.168.2.132/personal_live/', cookies=resp1.cookies)
    
    # 方法3
    # c = {'sessionid': '3ps7ouyox1l43alcb7rafxg9dtfnurcb'}
    # r = requests.get('http://192.168.2.132/personal_live/', cookies=c)
    
    c = {
        '.CNBlogsCookie': 'D020D...07',
        '.Cnblogs.AspNetCore.Cookies': 'CfDJ...WA',
        'SyntaxHighlighter': 'java',
        'SERVERID': '560...34'
    
    }
    r = requests.get('https://i.cnblogs.com/EditPosts.aspx?opt=1', cookies=c)
    
    resp = r.text
    print(resp)
    

    方法1是利用同一个Session,先登录,再访问有限制页面。

    方法2是直接使用requests,和1一样,同样是先登录,获取cookie,携带cookie访问限制页面。

    方法3是手动从浏览器获取cookie,再携带cookie访问限制页面。

    优缺点:

    1,2差不多,都是直接运行脚本就可以了,但是需要登录页面没有验证码一类的处理。

    3可以应对各种网站,但是需要手动获取cookie。

    转载于:https://www.cnblogs.com/lanqie/p/8392696.html

    展开全文
  • 最近在使用自己研究性能测试工具的时候想到,使用python向服务器不断发送数据以作为并发测试。大概情况如下: #coding=utf-8 import urllib2 import urllib import cookielib import os import threading ...

      最近在使用自己研究性能测试工具的时候想到,使用python向服务器不断发送数据以作为并发测试。大概情况如下:

    #coding=utf-8
    
    import urllib2
    import urllib
    import cookielib
    import os
    import threading
    import time
    class HB:def add_cookie_login(self,username):
            self.user = username
            cookiejar = cookielib.CookieJar()
            urlOpener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookiejar))
            headers ={
                "User-agent":"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1"}
            data={
                "loginname":self.user,
                "password":'111111',
                'remember':1}
            postdata = urllib.urlencode(data)
    
            url_1 = 'http://test.reg.haibian.com/login/ajax_login'
            request = urllib2.Request(url_1,postdata,headers)
            url =urlOpener.open(request)
            print url.info()
            page = url.read()
            url = urlOpener.open('http://test.www.haibian.com/home/index')
            #request = urllib2.Request(url)
            #url = urlOpener.open(request)
            page = url.read()
            url = urlOpener.open('http://test.www.haibian.com/course/study?chapter_id=8540&course_id=1095&class_id=1433152942&date_id=48946')
            page = url.read()
            print page
    
        def users(self):
            f = open('student_email.txt')
            data = f.readlines()
            for user in data:
                self.add_cookie_login(user)
                break
                #print user,
            pass
    if __name__ == '__main__':
        l = HB()
        l.users()

      就是通过python的几个包,然后将数据发送到服务器,然后再已服务器返回的登录cookie访问网站其他的页面。

    转载于:https://www.cnblogs.com/Mushishi_xu/p/4608118.html

    展开全文
  • 今天小编就为大家分享一篇Python3爬虫之urllib携带cookie爬取网页的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 想抓取这样的url的话,就得一边携带cookie一边搞。 今天遇到的问题就是mediawiki的编辑文章这个操作,wiki默认是要求你登陆才能编辑。不过wiki是开源的,可以改源码设置成不用非得登陆也可以编辑。最开...

    今天干活遇到一个事。有一些网站的一些操作非得要求你登陆才能做,比如新浪微博,你要随便看看吧,不行,非得让你登陆了才能看,再比如一些用户操作,像更改自己的资料啦,个人的隐私啦巴拉巴拉的。想抓取这样的url的话,就得一边携带cookie一边搞。

    今天遇到的问题就是mediawiki的编辑文章这个操作,wiki默认是要求你登陆才能编辑。不过wiki是开源的,可以改源码设置成不用非得登陆也可以编辑。最开始为了快点看到效果,就是改的源码,记得是LocalSetting.php这个文件,里面有一堆键值对,是用户权限的设置。都是布尔,很好搞。

    后来又研究了一下urllib2是怎么携带cookie的:

    下面干这么一件事:去知乎登陆,完了进到个人中心的编辑资料页面。就这两步

    #encoding:utf-8
    import urllib
    import urllib2
    import cookielib #用来搞cookie的
    
    #第一步:登陆知乎
    
    #拿到一个cookie实例,用来保留cookie,具体怎么保留这个不用操心,一切给http handler(这里就是HTTPCookieProcessor)处理
    cookie = cookiellib.CookieJar()
    #整一个opener出来,实际上不这么整的话,就像最普通的urllib2.urlopen(url)这样,实际上也是用了一个默认的openrer,只不过今天在这里是明确指定了opener,因为要搞cookie么
    #build_opener里面加了一个http handler用来处理所有http请求相关的东西,包括cookie的操作,这里为了搞cookie,所以用了这个cookieprocessor,里面放刚才的cookie实例
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
    data = {"email":"xxx","password":"xxx"}
    data=urllib.urlencode(data) request
    = urllib2.Request("http://www.zhihu.com/login", data) response = opener.open(request) #这个时候cookie已经被保存好了 print cookie #第二步:进入个人中心编辑页面 #注意上面cookie已经保存好了,而且注意是用这个cookie创建了httpcookieprocessor,又用这个httphandler创建了opener,所以这个opener就跟cookie关联上了,那么接下来进入个人中心就直接用这个opener就可以了 response2 = opener.open("http://www.zhihu.com/people/edit") #完事 谢谢

    完事,洗香香去,完了俯卧撑,昨晚昨晚今天胸疼嗷嗷嗷嗷

    转载于:https://www.cnblogs.com/lipijin/p/3470278.html

    展开全文
  • 在做爬虫时,有的网站...1,先登录成功一次,获取到携带登录信息的Cookie(需要手动) 拿CSDN举例,登录成功 ->个人主页 -> 打开控制台 -> 刷新页面 -> 看到以自己用户名命名的文件 -> 复制cookie...
  • Python3爬虫之urllib携带cookie爬取网页

    万次阅读 2018-01-17 22:56:09
    # 携带cookie进行访问 headers = { 'GET https':'//weibo.cn/5273088553/info HTTP/1.1', 'Host':' weibo.cn', 'Connection':' keep-alive', 'Upgrade-Insecure-Requests':' 1', 'User-Agent':' Mozilla/5.0 ...
  • 项目名/spiders/爬虫名.py(爬虫,携带cookie登录): # -*- coding: utf-8 -*- import scrapy import re class RenrenSpider(scrapy.Spider): name = '爬虫名' allowed_domains = ['renren.com'] start_urls...
  • demo.py(方式一:请求头携带cookie信息): # coding=utf-8 import requests headers = { "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like ...
  • cookie模拟登录 适用网站及场景 抓取需要登录才能访问的页面 方法一 1、先登录成功1次,获取到携带登陆...2、携带cookie发请求 ** Cookie ** Referer(源,代表你从哪里转过来的) ** User-Agent import r...
  • pythoncookie和session

    千次阅读 2020-02-18 19:18:28
    概念: 一、cookie: ... 也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。...就会自动的把上次请求存储的cookie数据自动的携带给服务器,服务器通过浏览器携带的数...
  • cookie的出现就是为了解决这个问题,第一次登录后服务器返回一些数据(cookie)给浏览器,然后浏览器保存在本地,当该用户发送第二次请求的时候,就会自动的把上次请求存储的cookie数据自动的携带给服务器,服务器...
  • 一,cookie和session的区别 cookie在客户的浏览器上,session存在服务器上 cookie是不安全的,且有失效时间 session是在cookie的基础上,服务端设置session时会向浏览器发送设置一个设置cookie的请求,这个cookie...
  • 使用python的requests模块 携带cookie请求页面
  • import requests #爬虫 ... 'Cookie':'自己的cookie 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36' } url="https://m
  • 标题 session作用 ...大家知道有些链接在请求时,需要携带cookie字段,而这些cookie字段部分需要从某些响应头里获取(另一部分通过抓包或者js获取),下面通过代码对比分析: var foo = 'bar'; ...
  • ① 我们第一次请求的时候可以携带一些信息(用户名/密码) cookie中没有任何信息 ② 当我们的服务器接收到这个请求之后,进行用户名和密码的验证,验证没有问题可以设置session 信息 ③ 在设置session信息的同时...
  • python爬虫之cookie

    2021-02-13 17:17:14
    python爬虫之cookie 什么是cookie: 在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。cookie的出现就是为了解决这个问题,第一...
  • python爬虫反爬机制之一——cookie校验,创建session对象并将发送请求产生的cookie储存其中,携带cookie进行访问,即可获得正确数据,本文以雪球网为例进行演示。
  • python cookie和session

    2020-08-22 15:27:37
    保存在用户浏览器端的键值对, 向服务端发请求时会自动携带 def login(request): # 设置cookie data = redirect('...') data.set_cookie() # 读取cookie request.COOKIES.get('xx') return data cookie的三个...
  • 本模块为IP溯源单线程获取fofa信息...import http.cookiejar # cookie from urllib import parse from fake_useragent import UserAgent def get_fofa_html(ip): url1 = f"https://fofa.so/result?q=ip='{ip}'&
  • 本模块为IP溯源单线程获取...import http.cookiejar # cookie from fake_useragent import UserAgent def get_ipip_html(ip): url1 = "https://www.ipip.net/ip.html" cookiejar = http.cookiejar.CookieJar() #
  • Python爬虫_Cookie

    2018-10-20 20:00:09
    就给客户端们颁发一个通行证吧,每人一个,无论谁访问都必须携带自己通行证。这样服务器就能从通行证上确认客户身份了。这就是Cookie的工作原理 Cookie和Session都用来保存状态信息,都是保存客户端状态的机制,它们...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 166
精华内容 66
关键字:

python携带cookie

python 订阅