cookie

Python中的cookies的使用

北城以北 提交于 2020-02-28 19:49:17
1、获取cookies 直接获取,不行。得设置浏览器头部 2、加上浏览器头部,获取了cookies。此时的cookies是一个jar对象 3、将cookie的格式进行转换查看 由于amazon的反爬比较强,这里用baidu.com作为案例进行演示 并将cookie以字典的形式保存为json文件到本地。 import json import requests from requests . cookies import RequestsCookieJar url = 'https://www.baidu.com/' headers = { 'User-Agent' : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36' } res = requests . get ( url , headers = headers ) print ( res . status_code ) print ( res . cookies ) #接下来使用cookies # 创建一个cookiejar实例 cookie_jar = RequestsCookieJar ( ) # 将获取的cookie转化为字典 resd =

在ubuntu的apache2上配置自定义Cookie

女生的网名这么多〃 提交于 2020-02-28 16:55:47
在ubuntu的apache2上配置自定义Cookie 1,修改配置文件,加载usertrack模块 vi /etc/apache2/mods-available/mime.load 增加一行配置 LoadModule usertrack_module /usr/lib/apache2/modules/mod_usertrack.so 2,修改配置文件,配置自定义Cookie vi /etc/apache2/sites-available/000-default.conf 在<VirtualHost *:80>下增加一行配置,其中cname为自己想要配置的Cookie名字 CookieName cname CookieExpires "1 days" CookieStyle Cookie CookieTracking on 3,重启apache2 service apache2 restart 重启后,访问apache2的web服务,可以看到自定义的Cookie已经生效啦。 来源: oschina 链接: https://my.oschina.net/u/3763169/blog/1647859

iframe 跨域访问session/cookie丢失问题解决方法

戏子无情 提交于 2020-02-28 12:58:39
今天因工作需要,在一个域名A的页面中,使用iframe包含另一个域名B的页面。在chrome,firefox测试一切正常。 当测试到IE7时,发现域名B中的页面session失效,不能写入session。 网上搜索后了解, 因为IE有安全策略,限制页面不保存第三方cookie(当前访问域名A下的页面为第一方cookie,而域名B下的页面为第三方cookie)。 虽然有安全策略限制,但我们可以引入 P3P 声明允许第三方收集个人信息,使第三方cookie不被拒绝。 P3P:Platform for Privacy Preferences (隐私偏好平台)是W3C公布的一项隐私保护推荐标准,能够保护在线隐私权。使用Internet者可以选择在浏览网页时,是否被第三方收集并利用自己的个人信息。如果一个站点不遵守P3P标准,它的Cookies将被自动拒绝。 在iframe的页面头加入以下语句即可解决session失效问题。 [php] view plain copy header( 'P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"' ); a.com/index.php [html] view plain copy <!DOCTYPE HTML PUBLIC

彻底理解cookie,session,token

最后都变了- 提交于 2020-02-28 09:23:46
彻底理解cookie,session,token 发展史 很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应, 尤其是我不用记住是谁刚刚发了HTTP请求, 每个请求对我来说都是全新的。这段时间很嗨皮 但是随着交互式Web应用的兴起,像在线购物网站,需要登录的网站等等,马上就面临一个问题,那就是要管理会话,必须记住哪些人登录系统, 哪些人往自己的购物车中放商品, 也就是说我必须把每个人区分开,这就是一个不小的挑战,因为HTTP请求是无状态的,所以想出的办法就是给大家发一个会话标识(session id), 说白了就是一个随机的字串,每个人收到的都不一样, 每次大家向我发起HTTP请求的时候,把这个字符串给一并捎过来, 这样我就能区分开谁是谁了 这样大家很嗨皮了,可是服务器就不嗨皮了,每个人只需要保存自己的session id,而服务器要保存所有人的session id ! 如果访问服务器多了, 就得由成千上万,甚至几十万个。 这对服务器说是一个巨大的开销 , 严重的限制了服务器扩展能力, 比如说我用两个机器组成了一个集群, 小F通过机器A登录了系统, 那session id会保存在机器A上, 假设小F的下一次请求被转发到机器B怎么办? 机器B可没有小F的

实现自动登录功能

拟墨画扇 提交于 2020-02-28 05:41:36
学了过滤器之后,就结合了前面的知识简单的去实现了一下自动登录的功能 原理实现 使用cookie保存用户信息,实现下次访问不需要重新输入密码登录。用户发起请求,经过过滤器,查看cookie的值是否为空,是则代表第一次登录,然后进行正常的登录,否则,取出cookie中的内容,然后实现登录。 JSP页面 login.jsp < % @ page language = "java" contentType = "text/html; charset=UTF-8" pageEncoding = "UTF-8" % > < ! DOCTYPE html > < html > < head > < meta charset = "UTF-8" > < title > Insert title here < / title > < / head > < body > < form action = "LoginServlet" method = "post" > 账号 : < input type = "text" name = "username" > < br > 密码 : < input type = "password" name = "password" > < br > < input type = "checkbox" name = "auto_login" > 自动登录 < br

练习十三

元气小坏坏 提交于 2020-02-27 19:47:29
习题1 下面关于TCP协议的说法,哪些是正确的: (不支持广播通讯、提供紧急数据传送功能,当有紧急数据发送时,接收方收到后会优先读取紧急数据、能够探知到接收方处理能力,当接收方大量数据未接收时,会停止继续发送新数据) TCP是面向有连接的数据通信,不支持广播通信。 习题2 对滑动窗口不正确的描述是: (能够防止报文段顺序出错) 防止报文段顺序出错应该是 序列号 来保证的 滑动窗口本质上是描述接受方的 TCP 数据报缓冲区大小的数据,发送方根据这个数据来计算自己最多能发送多长的数据。如果发送方收到接受方的窗口大小为 0 的 TCP 数据报,那么发送方将停止发送数据,等到接受方发送窗口大小不为 0 的数据报的到来。 关于滑动窗口协议,书上还介绍了三个术语,分别是: 1. 窗口合拢:当窗口从左边向右边靠近的时候,这种现象发生在数据被发送和确认的时候。 2. 窗口张开:当窗口的右边沿向右边移动的时候,这种现象发生在接受端处理了数据以后。 3. 窗口收缩:当窗口的右边沿向左边移动的时候,这种现象不常发生。 TCP 就是用这个窗口,慢慢的从数据的左边移动到右边,把处于窗口范围内的数据发送出去(但不用发送所有,只是处于窗口内的数据可以发送。)。这就是窗口的意义。窗口的大小是可以通过 socket 来制定的, 4096 并不是最理想的窗口大小,而 16384 则可以使吞吐量大大的增加。 习题3

09 客户端 浏览器安全

青春壹個敷衍的年華 提交于 2020-02-27 18:27:24
浏览器同源策略 host (域名或IP地址, 如果是IP地址则可以看做是一个根域名), 子域名, 端口, 协议 (http, https) 比如,mail.example.com和calendar.example.com是example.com的两个子域,子域名也被包含在同源策略中. 在浏览器中 <script>, <img>, <iframe>, <link> 等标签都可以跨域加载资源, 而不受同源策略的限制. 这些带 "src"属性的标签每次加载时,实际上由浏览器发起了一次 GET 请求, 不同于 XMLHttpRequest 的是,通过 src 属性加载的资源,浏览器限制了 JavaScript 的权限,使其不能读,写返回的内容。 对于浏览器来说, 除了 DOM, Cookie, XMLHttpRequest 会受到同源策略的限制. XSS 跨站脚本攻击 跨站脚本攻击(XSS) 是客户端脚本安全中的头号大敌. Cross Site Script. 书中有一些详细的介绍, 用到时在说把 防御: HttpOnly 属性, 输入检查 validation CSRF 跨站点请求伪造 CSRF : Cross Site Request Forgery 浏览器所持有的 Cookie 分为两种: 一种是"session Cookie", 又称为临时Cookie, 另一种是 Third

Cookie已阻止/未保存在Internet Explorer的IFRAME中

别来无恙 提交于 2020-02-27 08:26:25
我有两个网站,假设他们是 example.com 和 anotherexample.net 。 在 anotherexample.net/page.html ,我有一个 IFRAME SRC="http://example.com/someform.asp" 。 IFRAME显示一个表单供用户填写并提交到 http://example.com/process.asp 。 当我在自己的浏览器窗口中打开表单(“ someform.asp ”)时,一切正常。 但是, 当我在IE 6或IE 7 someform.asp 加载为IFRAME时,example.com的cookie不会保存。 在Firefox中,此问题不会出现。 出于测试目的,我在 http://newmoon.wz.cz/test/page.php 上创建了类似的设置。 example.com 使用基于cookie的会话(我无能为力),所以没有cookie, process.asp 将不会执行。 如何强制IE保存这些cookie? 嗅探HTTP流量的结果:在GET /someform.asp响应中,有一个有效的每会话Set-Cookie头(例如 Set-Cookie: ASPKSJIUIUGF=JKHJUHVGFYTTYFY ),但在POST /process.asp请求中,没有Cookie头一点都不 Edit3

php中的curl常用例子

时间秒杀一切 提交于 2020-02-27 07:39:36
1.基本请求 <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.baidu.com"); curl_setopt($ch, CURLOPT_HEADER, false); // 如果返回乱码,可以把false改为 array('content-type: application/x-www-form-urlencoded; charset=UTF-8') curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //为true时,会把结果存起来,为false时,会直接把结果输出 $result=curl_exec($ch); curl_close($ch); ?> 2.使用代理 <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.baidu.com"); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE); curl_setopt($ch, CURLOPT_PROXY,

memcached、cookie、session

不羁的心 提交于 2020-02-27 07:05:47
Memcached(一个高性能的分布式的内存对象缓存系统)   可用来分担数据库的压力。通过在内存里维护一个统一的巨大的hash表,memcached能存储各种各样的数据,包括图像、视频、文件、以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。 适用:存储验证码(图形验证码、短信验证码)、登录session等所有不是至关重要的数据。 安全性: 使用 -l 参数设置为只有本地可以连接:这种方式,就只能通过本机才能连接,别的机器都不能访问,可以达到最好的安全性。 使用防火墙,关闭11211端口,外面也不能访问。 django中使用需在 settings.py 中配置好缓存; 添加 KEY_FUNCTION 参数:django在存储数据到memcached中的时候,可自定义前缀。 1 # 配置memcached缓存; 2 CACHES = { 3 'default': { 4 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 5 # 可指定多个连接:['172.19.26.240:11211','172.19.26.242:11211',] 6 'LOCATION': '127.0.0.1:11211', 7 'KEY_FUNCTION': lambda key