python爬虫遇到会话存储sessionStorage
记录一次爬虫生成链接过程中遇到的sessionStorage存储数据
1.简介
sessionStorage 是HTML5新增的一个会话存储对象,用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。
seesionStorage的存储方式采用key、value的方式。value的值必须为字符串类型(传入非字符串,也会在存储时转换为字符串。
2.应用:艺龙国际机票订单付款页
这是按照正常步骤访问进入的艺龙国际机票订单页
大家可以点进去看一下,会发现如下图:
这回怎么不加载数据了呢,通过抓包可以了解到正常访问会多出一个异步接口请求:
点击请求链接,发现是个get请求,并且参数都给出来了:
按道理讲,这里参数都给出来了,为什么复制出来访问就不可以了呢,猜测应该是和 session,cookie之类的有关
F12打开开发者工具,
查看cookie和session:
发现,右图比左图多出来一个参数 extObj,后面的值一看肯定是列表搜索页带过来的参数(列表接口里面有这种类似的参数,有兴趣的朋友可以去列表接口找找)
下面我们来修改一下左图不加载数据的页面的会话存储:
双击鼠标,左边填入键 extObj,右边给个值,把右图的值拿过来{"cabinExt":"oGpSF77lwVTMnZFNVeAVtzcrPLUS9527mJxmySV2eOKQbvL8WwMQsykOHyW4laVY814SU2d4QPLUS9527vFO1BVIHFkZccfxFriS46S20FaZ/aJTH9ZnYAF0OkxCTuYovbb4MbQPeadUP2CNRsVitSRhQv79APBgUwHP4SpVSi6ZdgsXwTnsZJ83Lz/v1rSeIjdBNDLr/9HzO8Nz0lJ9DoBjJqFpPLUS9527APqbshgh3djxuSAx2poDVIiMiIhjJ92LwoPLUS95277Xfm8Wa3GEShNFQrC62NcObSA9OrhqP7YgcgV3zWKDVRQwAb70lQNfzdu8oPCX265vYOOWalhMJLFiTl50PwE9ERRI/imVLjkDPLUS95278AjHzpxqTQ/3ll4uieAkZgfwGhDL5NRuKiXSuyJRQvNDdb6HiX9qqBGhPYeh60q4cWToSQ4mWYSlJbEAo5xrwp6UnLLZh47hkkbpPLUS9527DVdeTZP1PzA2Jbz3npaaKOkYJrNAgtE5jIlR4FZpkkGcm74yX7Gy25KwOuzLxw9SksYOF0b111KQB51qRkiezppMo/RRFPLUS9527kXiVQUppc/X2I3cUXPySerYPIfcj72sCI2hD5vERY8PLUS952732Wk2VSbVCADpiJ0fiLrppJQrNNQJ4LZc4SGOWFJtTKc6Zugq1cySkVKFPWNwxxxa5bQGGB65m5p1n017nI9LkwjDjIMdeASr3RElcyEo9cCCsoosOxHsvDjrOPsn","goSegExt":"ecPa/lpAyxh48Zadu1hKoNmPLvJfa30AHv6T70dj374fwiy//ythPLUS9527JPLUS9527MWcWYJaqUN0TfPLUS9527GZ9EzggkFMEc4oZRfklQ2KkbYvGSobySItqPLUS9527UBtOb32k55xo5kNY74qDbbr2hKHilWPLUS9527u/9S92DFQEACXiDS9B6dn85uejePgmJW37PD02k6jhRpMsdog6dR1ReWB4DsFI75WBRo6nYXR5hzJa5UA5ilrB1ubMUuNJmuMrpxGchPJEcZYYht9Xgs9saDWcFoxYCwI8XJNMHiMp0Vfx/XIXluSjyHBNEHKscH0zIvNeujZ5elcL3W1CV4uRbsgET2VeNvcmXphVk0p6NpyB5PLUS95271CXv6Nq7gTBSFoZUSyCCwztNPUelkbAIa7ePLUS9527ruZrJoNLkRc4MU4cJgGPR4u0FyGL6nxEb9VH7eY7JaMnXKk/E7MhLoB0uZDs5M34sohu","backSegExt":"ecPa/lpAyxh48Zadu1hKoNmPLvJfa30AHv6T70dj377Aq7oxmIjaxqRlVDzMGz0udU/J4JyjN8mvYK8Ikxuq0Q4paixYRw0Jk7Gf0FPLUS9527oS/sxnZZWC4gGwmkXE8Ux/PJERQSX92uciOoRRRMhlLR67GG49AnJ8zEU1BO/AE/bamL978k8ULYrh3J4F6w9g/NlzbIMZ0HC8RpwgxLad51n7/VaqeWx/G/1lvO5J0HqmEPNv2MKTkSdeg7rODA9N63epj/sRpmUnNC8AftbYtEYSvYK4/8IEkzc/utof3Qaayc3LarkvS/0jdSCe5ASonNEVMOq0uYuEovfH5fjo/0PAN9VZjcirFgIawcgkVikqeFYpLErnkDE8gxchOiFjFRAaSRJNh5tiV2PLUS9527aCDDzd47QKgsaIeBa9ManpnPLUS952746Ar6PLUS9527qCW1ozQ8HhtIy/J7AyC4Yf"}
朝空白处点一下,会自动保存,然后刷新页面,发现有数据了:
爬虫通常是get请求参数在链接里,或者post请求提交参数,来达成某种目的(订单生成),
把订单链接后面的参数删除 (http://iflight.elong.com/order/gotofillorder/),只要会话存储里有上面的参数,一样可以生成\
这个订单链接后面带了那么多参数,竟然没用,只是障眼法
到这里基本就完成了,我们只需要把参数和订单链接交给前端来处理.
温馨提示
- 如果您对本文有疑问,请在评论部分留言,我会在最短时间回复。
- 如果本文帮助了您,也请评论关注,作为对我的一份鼓励。
- 如果您感觉我写的有问题,也请批评指正,我会尽量修改。
- 本文为原创,转载请注明出处。
python爬虫遇到会话存储sessionStorage的更多相关文章
- 会话存储sessionStorage
会话存储的工作方式和本地存储的工作方式很接近,不同之处在于数据是各个浏览器上下文私有的,会在文档被关闭时移除(注意是被关闭时才移除,刷新是不会移除的).我们通过全局sessionStorage访问会话 ...
- python爬虫专栏学习
知乎的一个讲python的专栏,其中爬虫的几篇文章,偏入门解释,快速看了一遍. 入门 爬虫基本原理:用最简单的代码抓取最基础的网页,展现爬虫的最基本思想,让读者知道爬虫其实是一件非常简单的事情. 爬虫 ...
- HTML5 sessionStorage会话存储
sessionStorage 是HTML5新增的一个会话存储对象,用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据.本篇主要介绍 sessionStorage(会话存储) ...
- Token和SessionStorage(会话存储对象)
sessionStorage数据只在当前标签页共享 存在本地 关闭浏览器后会清除数据(关闭标签页不会清楚) localStorage数据会存在浏览器中 浏览器关了数据也还在 只有清除缓存才会消失 ...
- Python爬虫框架Scrapy实例(三)数据存储到MongoDB
Python爬虫框架Scrapy实例(三)数据存储到MongoDB任务目标:爬取豆瓣电影top250,将数据存储到MongoDB中. items.py文件复制代码# -*- coding: utf-8 ...
- java调用Linux执行Python爬虫,并将数据存储到elasticsearch--(环境脚本搭建)
java调用Linux执行Python爬虫,并将数据存储到elasticsearch中 一.以下博客代码使用的开发工具及环境如下: 1.idea: 2.jdk:1.8 3.elasticsearch: ...
- Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储
Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...
- python爬虫27 | 当Python遇到MongoDB的时候,存储av女优的数据变得如此顺滑爽~
上次 我们知道了怎么操作 MySQL 数据库 python爬虫26 | 把数据爬取下来之后就存储到你的MySQL数据库. MySQL 有些年头了 开源又成熟又牛逼 所以现在很多企业都在使用 MySQL ...
- 用Python爬虫爬取广州大学教务系统的成绩(内网访问)
用Python爬虫爬取广州大学教务系统的成绩(内网访问) 在进行爬取前,首先要了解: 1.什么是CSS选择器? 每一条css样式定义由两部分组成,形式如下: [code] 选择器{样式} [/code ...
随机推荐
- HTML5学习手册
目录 HTML 简介 HTML 简介 什么是 HTML? HTML 标签 HTML 文档 = 网页 基本的 HTML 标签 - 四个实例 HTML 标题 HTML 段落 HTML 链接 HTML 图像 ...
- NLP(三) 预处理
分词 from nltk.tokenize import LineTokenizer,SpaceTokenizer,TweetTokenizer from nltk import word_token ...
- 【selenium】- 自动化测试必备工具FireBug&FirePath
本文由小编根据慕课网视频亲自整理,转载请注明出处和作者. 1. FireBug FireBug的安装: 如果使用Firefox浏览器的话,推荐使用较低版本,比如27-32.否则会报错. 点击右上角的菜 ...
- 堆实战(动态数据流求top k大元素,动态数据流求中位数)
动态数据集合中求top k大元素 第1大,第2大 ...第k大 k是这群体里最小的 所以要建立个小顶堆 只需要维护一个大小为k的小顶堆 即可 当来的元素(newCome)> 堆顶元素(small ...
- idea中applicationContext-trans.xml中的Cannot resolve bean 'dataSource'...的问题解决
问题如下: (applicationContext-trans.xml中的部分截图) 先了解问题是怎么出现的: 此处的dataSource是在applicationContext-dao.xml中配置 ...
- eclipse中注释模板使用
步骤: Window -->Preferences-->Java-->Code Style -->Code Templates-->Comments 1.Files可对整 ...
- JDK1.8的HashMap数据结构及红黑树
在JDK1.6,1.7中,HashMap的实现都是用基础的“拉链法”去实现,即数组+链表的形式.如下图:通过不同的hash值,来对数据进行分配存储. 关于HashMap的Entry长度,可以参考htt ...
- win7 安装mysql5.7
Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini以及服务无法启动的解决办法以及修改初始密码的方法 LZ初学SQL,本来以为开源的安装很简单,但 ...
- VMware Workstation Fixed Unable to connect to the MKS
场景:早上开虚拟机时突然报这个错 解决办法如下: 以管理员的身份打开CMD,然后执行如下命令: net start vmx86 net start hcmon net start vmauthdser ...
- 二分练习题2 查找大于等于x的最小元素 题解
题目描述 现在告诉你一个长度为 \(n\) 的有序数组 \(a_1, a_2, ..., a_n\) ,以及 \(q\) 次询问,每次询问会给你一个数 \(x\) ,对于每次询问,你需要输出数组 \( ...