精华内容
下载资源
问答
  • 如何设置Cookie

    千次阅读 2018-03-25 09:30:52
    简单的查了一下,常用的语言设置Cookie的语法,发现太不一样,不好全部掌握,如何设置自己需要的Cookie,需要掌握点小技能。这里讲的主要是参数部分,也许会对php和java开发的程序员有很大的帮助。下面的参数大家...

    简单的查了一下,常用的语言设置Cookie的语法,发现太不一样,不好全部掌握,如何设置自己需要的Cookie,需要掌握点小技能。这里讲的主要是参数部分,也许会对php和java开发的程序员有很大的帮助。下面的参数大家按照名字去对应,以免语法不同造成的问题

    1.isHttpOnly通常是最后的参数,即开启全局的Cookie的HttpOnly属性,一般来说建议设置true,具体是如果您在cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击,默认值为 false。注意cookie安全性并不高,这个估计就是防君子的,简单的说火狐浏览器就提供了很方便查看cookie的入口,所以聊的是自己需要的Cookie

    2.domain设置可以访问该Cookie的域名,很多程序员会设置为空或者null,注意如果需要设置的话第一个字符必须为“.”。 

    3.path设置该Cookie的使用路径,一般来说很多的Cookie使用范围是整个网站,所以设置为“/”,则本域名下contextPath都可以访问该Cookie

    4.maxAge设置该Cookie失效的时间,单位秒。如果为正数,则该Cookie在>maxAge秒之后失效。如果为负数,该Cookie为临时Cookie,关闭浏览器即失效,浏览器也不会以任何形式保存该Cookie。如果为0,表示删除该Cookie。默认为–1。

    5.secure可选。规定是否通过安全的 HTTPS 连接来传输 cookie。暂时还是等谷歌同学把HTTPS普及的吧

    展开全文
  • scrapy中如何设置应用cookies

    万次阅读 2018-11-29 11:24:29
    本人是python3.6 总的来说,scrapy框架中设置cookie有三种方式。 第一种:setting文件中设置cookie ...当COOKIES_ENABLED是注释的时候scrapy默认没有开启cookie 当COOKIES_ENABLED没有注释设置为False的时候s...

    原文:https://blog.csdn.net/Thoms_/article/details/82977036

    本人是python3.6

    总的来说,scrapy框架中设置cookie有三种方式。

    第一种:setting文件中设置cookie

    当COOKIES_ENABLED是注释的时候scrapy默认没有开启cookie

    当COOKIES_ENABLED没有注释设置为False的时候scrapy默认使用了settings里面的cookie

    当COOKIES_ENABLED设置为True的时候scrapy就会把settings的cookie关掉,使用自定义cookie

    所以当我使用settings的cookie的时候,又把COOKIES_ENABLED设置为True,scrapy就会把settings的cookie关闭,

    而且我也没使用自定义cookie,导致整个请求根本没有cookie,导致获取页面失败。

    总结:

    如果使用自定义cookie就把COOKIES_ENABLED设置为True

    如果使用settings的cookie就把COOKIES_ENABLED设置为False

    第二种:middlewares中设置cookie

    在middlewares中的downloadermiddleware中的process_request中配置cookie,配置如下:

    request.cookies={

    '':'',

    '':'',

    }

    等等。里面的cookie内容要以键值对的形式存在。

    第三种:在spider爬虫主文件中,重写start_request方法,在scrapy的Request函数的参数中传递cookies

                    
        # 重载start_requests方法
        def start_requests(self):
            headers = {
                        "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"}
            # 指定cookies
            cookies = {
                        'uuid': '66a0f5e7546b4e068497.1542881406.1.0.0',
                        '_lxsdk_cuid': '1673ae5bfd3c8-0ab24c91d32ccc8-143d7240-144000-1673ae5bfd4c8',
                        '__mta': '222746148.1542881402495.1542881402495.1542881402495.1',
                        'ci': '20',
                        'rvct': '20%2C92%2C282%2C281%2C1',
                        '_lx_utm': 'utm_source%3DBaidu%26utm_medium%3Dorganic',
                        '_lxsdk_s': '1674f401e2a-d02-c7d-438%7C%7C35'}
    
                    # 再次请求到详情页,并且声明回调函数callback,dont_filter=True 不进行域名过滤,meta给回调函数传递数据
            yield Request(detailUrl, headers=headers, cookies=cookies, callback=self.detail_parse, meta={'myItem': item},  dont_filter=True)


    同时还要在setting中设置:

    ROBOTSTXT_OBEY=False

     

    展开全文
  • 当COOKIES_ENABLED是注释的时候scrapy默认没有开启cookie 当COOKIES_ENABLED没有注释设置为False的时候scrapy默认使用了settings里面的cookie 当COOKIES_ENABLED设置为True的时候scrapy就会把settings的cookie关掉,...
  • 本人是python3.6 ...当COOKIES_ENABLED是注释的时候scrapy默认没有开启cookie 当COOKIES_ENABLED没有注释设置为False的时候scrapy默认使用了settings里面的cookie 当COOKIES_ENABLED设置为True的时候scr...

    本人是python3.6

    总的来说,scrapy框架中设置cookie有三种方式。

    第一种:setting文件中设置cookie

    当COOKIES_ENABLED是注释的时候scrapy默认没有开启cookie

    当COOKIES_ENABLED没有注释设置为False的时候scrapy默认使用了settings里面的cookie

    当COOKIES_ENABLED设置为True的时候scrapy就会把settings的cookie关掉,使用自定义cookie

    所以当我使用settings的cookie的时候,又把COOKIES_ENABLED设置为True,scrapy就会把settings的cookie关闭,

    而且我也没使用自定义cookie,导致整个请求根本没有cookie,导致获取页面失败。

    总结:

    如果使用自定义cookie就把COOKIES_ENABLED设置为True

    如果使用settings的cookie就把COOKIES_ENABLED设置为False

    第二种:middlewares中设置cookie

    在middlewares中的downloadermiddleware中的process_request中配置cookie,配置如下:

    request.cookies={

    '':'',

    '':'',

    }

    等等。里面的cookie内容要以键值对的形式存在。

    第三种:在spider爬虫主文件中,重写start_request方法,在scrapy的Request函数的参数中传递cookies

    #重载start_requests方法
    def start_requests(self):
        headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:59.0) Gecko/20100101             
        Firefox/59.0"}
        # 指定cookies
        cookies = {
        'uuid': '66a0f5e7546b4e068497.1542881406.1.0.0',
        '_lxsdk_cuid': '1673ae5bfd3c8-0ab24c91d32ccc8-143d7240-144000-1673ae5bfd4c8',
        '__mta': '222746148.1542881402495.1542881402495.1542881402495.1',
        'ci': '20',
        'rvct': '20%2C92%2C282%2C281%2C1',
        '_lx_utm': 'utm_source%3DBaidu%26utm_medium%3Dorganic',
        '_lxsdk_s': '1674f401e2a-d02-c7d-438%7C%7C35'}
        # 再次请求到详情页,并且声明回调函数callback,dont_filter=True 不进行域名过滤,meta给回调        
        函数传递数据
        yield Request(detailUrl, headers=headers, cookies=cookies,         
        callback=self.detail_parse, meta={'myItem': item}, dont_filter=True)

    同时还要在setting中设置:

    ROBOTSTXT_OBEY=False

     

    展开全文
  • PHP之Cookie与Session

    2019-01-07 16:00:09
    目录 1 Cookie 1.1 图解cookie 1.2 cookie设置函数 1.3 设置cookie ...1.4 去除cookie ...1.5 获取cookie值 ...2,.2 开启会话 ...3 禁用cookie如何使用session 4 使用redis来管理session 1 Cooki...

    目录

    1 Cookie

    1.1 图解cookie

    1.2 cookie设置函数

    1.3 设置cookie

    1.4 去除cookie

    1.5 获取cookie值

    2 session

    2.1 session文件在服务器的位置

    2,.2 开启会话

    2.3 设置session

    3 禁用cookie后如何使用session

    4 使用redis来管理session


    1 Cookie

    1.1 图解cookie

     

    1.2 cookie设置函数

    bool setcookie (
     string $name
     [, string $value = ""
     [, int $expire = 0
     [, string $path = ""
     [, string $domain = ""
     [, bool$secure = false 
    [, bool $httponly = false ]]]]]]
     )

    1 name
    Cookie 名称。

    value
    Cookie 值。 这个值储存于用户的电脑里,请勿储存敏感信息。 比如 name 是 'cookiename', 可通过 
    $_COOKIE['cookiename'] 获取它的值。

    2 expire
    Cookie 的过期时间。 这是个 Unix 时间戳,即 Unix 纪元以来(格林威治时间 1970 年 1 月 1 日 
    00:00:00)的秒数。 也就是说,基本可以用 time() 函数的结果加上希望过期的秒数。 或者也可以用 
    mktime()。 time()+60*60*24*30 就是设置 Cookie 30 天后过期。 如果设置成零,或者忽略参数,
     Cookie 会在会话结束时过期(也就是关掉浏览器时)。

    Note:

    你可能注意到了,expire 使用 Unix 时间戳而非 Wdy, DD-Mon-YYYY HH:MM:SS GMT 这样的日期格式,是
    因为 PHP 内部作了转换。

    3 path
    Cookie 有效的服务器路径。 设置成 '/' 时,Cookie 对整个域名 domain 有效。 如果设置成 '/foo/',
     Cookie 仅仅对 domain 中 /foo/ 目录及其子目录有效(比如 /foo/bar/)。 默认值是设置 Cookie 时
    的当前目录。

    4 domain
    Cookie 的有效域名/子域名。 设置成子域名(例如 'www.example.com'),会使 Cookie 对这个子域名和
    它的三级域名有效(例如 w2.www.example.com)。 要让 Cookie 对整个域名有效(包括它的全部子域
    名),只要设置成域名就可以了(这个例子里是 'example.com')。

    旧版浏览器仍然在使用废弃的 » RFC 2109, 需要一个前置的点 . 来匹配所有子域名。

    5 secure
    设置这个 Cookie 是否仅仅通过安全的 HTTPS 连接传给客户端。 设置成 TRUE 时,只有安全连接存在时才
    会设置 Cookie。 如果是在服务器端处理这个需求,程序员需要仅仅在安全连接上发送此类 Cookie (通过 
    $_SERVER["HTTPS"] 判断)。

    6 httponly
    设置成 TRUE,Cookie 仅可通过 HTTP 协议访问。 这意思就是 Cookie 无法通过类似 JavaScript 这样的
    脚本语言访问。 要有效减少 XSS 攻击时的身份窃取行为,可建议用此设置(虽然不是所有浏览器都支持),
    不过这个说法经常有争议。 PHP 5.2.0 中添加。 TRUE 或 FALSE

    1.3 设置cookie

    <?php
    setcookie('username','lwqbrell');
    ?>

    1.4 去除cookie

    方式一:用unset($_COOKIE[name])去除该变量。

    方式二:将cookie设为过去时间,setcookie(name,value,time-1);

    1.5 获取cookie值

    可以使用$_COOKIE,需要注意的是cookie是在下次刷新才生效的

    <?php
    setcookie('name','lwqbrell');
    var_dump($_COOKIE);
    ?>
    

     



    2 session

    2.1 session文件在服务器的位置

    php.ini文件中session.save_path既是session文件的存储位置。

    2,.2 开启会话

    bool session_start ([ array $options = array() ] )

    options
    此参数是一个关联数组,如果提供,那么会用其中的项目覆盖 会话配置指示 中的配置项。此数组中的键无需包含 
    
    session. 前缀。
    
    除了常规的会话配置指示项, 还可以在此数组中包含 read_and_close 选项。如果将此选项的值设置为 TRUE, 
    
    那么会话文件会在读取完毕之后马上关闭, 因此,可以在会话数据没有变动的时候,避免不必要的文件锁。

    2.3 设置session

    $_SESSION[key]=value

    <?php
    session_start();
    $_SESSION['name']='brell';
    $_SESSION['age']=22;
    $_SESSION['sex']='boy';
    var_dump($_SESSION);
    ?>

    3 禁用cookie后如何使用session

    cookie被禁用后任然可以使用session,只是不推荐这么做,那么cookie被禁用后要如何使用session呢,答案就是通过URL传递sessionID来获取

    <?php
    header('Content-Type: text/html; charset=utf-8');
    
    session_start();
    $_SESSION['name']='trevor';
    $_SESSION['age']='23';
    
    echo "<a href='./session.php?'".session_name()."=".session_id()."'>URL传sessionid</a>";
    ?>

     

    <?php
    session_id($_GET[session_name()]);
    session_start();
    echo $_SESSION['name'];
    ?>

     

     

    4 使用redis来管理session

    <?php
    class SessionManager{
        private $redis;
        private $sessionSavePath;
        private $sessionName;
        private $sessionExpireTime=300;
        public function __construct(){
            $this->redis = new Redis();
            $this->redis->connect('127.0.0.1',6379);
            $arr = session_set_save_handler(
                array($this,"open"),
                array($this,"close"),
                array($this,"read"),
                array($this,"write"),
                array($this,"destroy"),
                array($this,"gc")
            );
            session_start();
        }
        public function open($path,$name){
            return true;
        }
        public function close(){
            return true;
        }
        public function read($id){
            
            //获取redis中的指定记录
            $value = $this->redis->get($id);
            if($value){
                return $value;
            }else{
                return '';
            }
        }
        public function write($id,$data){
        
            //以session ID为键,存储
            if($this->redis->set($id,$data)){
                
                //设置redis中数据的过期时间,即session的过期时间
                $this->redis->expire($id,$this->sessionExpireTime);
                return true;
            }
    
            return false;
        }
        public function destroy($id){
            
            //删除redis中的指定记录
            if($this->redis->delete($id)){
                return true;
            }
            return false;
        }
        public function gc($maxlifetime){
            return true;
        }
        public function __destruct(){
            session_write_close();
        }
    }
    ?>

     

    展开全文
  • postman自动设置token(csrf及authorization token) 近期在开发一个Django的项目,由于开启了csrf防护,所以需要在请求的...Django项目的csrftoken一般在登录的时候会设置cookie中,本文描述了如何使用postman自...
  • 如何实现session共享

    2019-09-12 05:22:03
    session被用于表示一个持续的连接状态,在网站访问中一般指代客户端浏览器的进程从开启到结束的过程。session其实就是网站... session的常见实现形式是会话cookie(session cookie),即未设置过期时间的cookie,...
  • 当COOKIES_ENABLED是注释的时候scrapy默认没有开启cookie 当COOKIES_ENABLED没有注释设置为False的时候scrapy默认使用了settings里面的cookie 当COOKIES_ENABLED设置为True的时候scrapy就会把settings的cookie关掉,...
  • 第一种:在php.ini中设置session.gc_maxlifetime=1440 //默认时间 第二种:代码实现 1.session 函数 session_set_cookie_params(); 来设置 Session 的生存期的,该...1 //先设置开启session 2 $lifeTime = 24...
  • 默认scrapy开启的并发线程为32个,可以适当进行增加。在settings配置文件中修改CONCURRENT_REQUESTS = 100值为100,并发设置成了为100。 降低日志级别: 在运行scrapy时,会有大量日志信息的输出,为了减少CPU的使用...
  • 这篇解决方案文件提供有关用户如何优化Internet浏览器...# 如果您所使用的浏览器并非是Internet Explorer 6、Internet Explorer 7或者Internet Explorer 8,请查看其他浏览器的文档以获取更多有关如何优化设置的信息。
  •  //开启表单提示  //login combo 设置 Start  var login_store = new Ext.data.Store({  proxy: new Ext.data.HttpProxy({url:'../servlet/Login_combo'}),  reader: new Ext.data.ArrayReader({},...
  • 主要介绍了python实现查询苹果手机维修进度,这里用到了最重要的一个知识是python中如何设置cookie支持以及开启调试模式,需要的朋友可以参考下
  • SeimiCrawler文档离线版

    2018-09-18 11:43:08
    •SeimiCrawler一个敏捷强大的Java爬虫框架 •1.简介 ...如何开启cookie ◦6.3.如何启用分布式模式 ◾6.3.1.参考 ◾6.3.2.特别注意 ◦6.4.如何设置复杂的起始请求 •7.社区讨论 •8.项目源码
  • 前言人机识别在七层安全对抗中是一个经久不衰的话题,如何最快且最小侵入的区分出人跟机器,就能对抗中能获得主动权。...设置 Cookie:JavaScript 挑战 :而 Headless Chromium 模式的出现,更为爬虫开启一扇大...
  • ASP200问.EXE

    2010-05-20 13:25:08
    44.如何判断客户端的Cookie是否处于开启状态 45.如何使用Cookie记录用户访问信息 46.如何Cookie实现仅弹出一次同样的窗口 48.如何清除页面缓存 49.如何获取用户浏览器信息 50.如何获取用户真实的IP地址 52.如何...
  • 安全控件安装失败,具体表现为,无法下载控件、无法安装控件、无法启用控件,如何处理? A:该问题为控件不兼容问题,需要修改浏览器设置,不同的浏览器修改步骤如下 Chrome浏览器 方法:清除Cookie缓存...
  • C#编程经验技巧宝典

    热门讨论 2008-06-01 08:59:33
    4 <br>0008 为程序设置版本和帮助信息 4 <br>0009 设置Windows应用程序启动窗体 5 <br>0010 设置Web应用程序起始页 5 <br>0011 如何设置程序的出错窗口 5 <br>0012 如何进行程序调试 6 ...
  • 特别注意: 2.4版本更换了检查更新服务器和小心心服务器 2.4版本以后的服务器将弃用 注意...重要问题:弹幕姬登录后,在不开启广告姬的情况下保存设置会出现致命错误,导致弹幕姬开启不了,在1.0.3以后版本得到解决
  • d、如何使用类似jsoncpp的开源库为己用; ④、获取本电脑公网ip地址; 15、全自动注册网易邮箱之流程分析: ①、多入口分析; ②、使用Chrome浏览器模拟手机浏览器; ③、根据抓包结果分析注册流程; 16、...
  • 3.1.9 什么情况下设置了索引但无法使用? 3.2.0 SQL语句的优化 3.2.1 数据库索引的底层实现原理和优化 3.2.2 HTTP和HTTPS的主要区别? 3.2.3 如何设计一个高并发的系统? 3.2.4 两条相交的单向链表,如何求他们的...
  • 预览的内容包括Request Header、Request Cookie、Request Content、Response Header、Response Cookie、Response Content Content内容如果为JSON将会自动格式化显示 分享功能将抓包生成的所有数据包打包为har文件...
  • 6.24 开启内置闹钟与已安装的应用程序设置 394 6.25 在sdk开发环境中访问jni接口 397 第7章 娱乐多媒体 401 7.1 访问drawable资源的宽和高 402 7.2 绘制几何图形 404 7.3 手机屏幕保护程序 408 ...
  • 实例192 用代码设置DataGrid控件的列标头 350 实例193 快速将DataGrid控件中的数据显示在 文本框中 351 实例194 在DataGrid控件中实现下拉列表框 353 实例195 使用代码格式化DataGrid控件中的 数据 354 实例...
  • 实例192 用代码设置DataGrid控件的列标头 350 实例193 快速将DataGrid控件中的数据显示在 文本框中 351 实例194 在DataGrid控件中实现下拉列表框 353 实例195 使用代码格式化DataGrid控件中的 数据 354 实例...
  • 6.24 开启内置闹钟与已安装的应用程序设置 6.25 在SDK开发环境中访问JNI接口 第7章 娱乐多媒体 7.1 访问Drawable资源的宽和高 7.2 绘制几何图形 7.3 手机屏幕保护程序 7.4 用手指移动画面里的照片 7.5 加载存储卡的...
  • 6.24 开启内置闹钟与已安装的应用程序设置 6.25 在SDK开发环境中访问JNI接口 第7章 娱乐多媒体 7.1 访问Drawable资源的宽和高 7.2 绘制几何图形 7.3 手机屏幕保护程序 7.4 用手指移动画面里的照片 7.5 加载存储卡的...
  • Fragment 中 开启Activity带requestCode,开启的Activity关闭后,不会回调Fragment中的onActivityResult。只会调用Fragment 所在Activity的onActivityResult。 多fragment单activity拦截器不管用,难道只能用于拦截...
  • MySQL数据库新建 xboot 数据库,配置文件已开启ddl自动生成表结构但无初始数据,请记得运行导入xboot.sql文件(当报错找不到Quartz相关表时请设置数据库忽略大小写或额外重新导入quartz.sql) 修改配置文件 ...
  • 工程硕士学位论文 ...研究生姓名: 唐帅 导师姓名: 罗军舟 教授 苏生 教授 申请学位类别 工 程 硕 士 学位授予单位 东 南 大 学 工程领域名称 软 件 工 程 论文答辩日期 ...学位授予日期 答辩委员会主席 评阅人 ...

空空如也

空空如也

1 2 3
收藏数 41
精华内容 16
关键字:

如何设置开启cookie