博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
谈谈Flash图表中数据的采集
阅读量:6833 次
发布时间:2019-06-26

本文共 1275 字,大约阅读时间需要 4 分钟。

一般来说flash中的数据是不能被现有技术很容易采集到的,但是也不能谈flash色变,要具体问题具体分析,有些flash是可以通过一些分析发现背后的数据。然后采集就变得很容易了。

 

具体案例:搜房房价走势采集。

先看看房价走势页面:

 

可以看出,这是个flash的,还有很多鼠标移动上去显示的数据。

右键点击,发现确实是flash,然后查看源码,发现如下信息:

<iframe src="http://pinggus.soufun.com/Estimate/process/makeflashchart.aspx?dis=3&amp;city=%C9%EE%DB%DA&amp;height=218" width="680" height="218" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe>

 

原来flash是放在iframe中的,好的,打开改iframe对应的网页

 

别激动,没看到数据,还是flash,再查看源码,发现一堆脚本:

swfobject.embedSWF("http://img.soufun.com/secondhouse/image/pinggu/js/open-flash-chart.swf", "mychart", "100%", "218", "9.0.0", "expressInstall.swf", {"data-file":"makechartdata.aspx%3fdis%3d3%26newcode%3d1010035274%26city%3d%25c9%25ee%25db%25da%26district%3d%26commerce%3d%26isprojname%3d"},{allowScriptAccess:'always',wmode:'transparent'}
 

); 

 

玄机就在这里,仔细观察该脚本,发现其使用了一个叫做open-flash-chart的flash,经过google,是个开源的,打开其官网,发现关于它如何使用的文档:

再结合上面的源码,发现最关键的地方,数据是由:data-file指定的:

"data-file":"makechartdata.aspx%3fdis%3d3%26newcode%3d1010035274%26city%3d%25c9%25ee%25db%25da%26district%3d%26commerce%3d%26isprojname%3d"

在经过一些基本常识即可发现这是一个url,手工对其解码,得到如下url:

makechartdata.aspx?dis=3&newcode=1010035274&city=%25c9%25ee%25db%25da&district=&commerce=&isprojname=

加上url前半部分,得到完整url:

打开,看到什么了,是不是眼睛被亮瞎了:

这就是你要的数据,好了,今天就到这里,谢谢大家关注。

转载地址:http://gytkl.baihongyu.com/

你可能感兴趣的文章
设计模式之命令模式
查看>>
Node.js Writable Stream的实现简析
查看>>
Kotlin的一次lambda探险
查看>>
关于js的星星点点(构造函数和普通函数及class)
查看>>
两个超详细的python爬虫技能树(思维导图)
查看>>
PostCSS真的太好用了!
查看>>
微信热修复 tinker 及 tinker server 快速接入
查看>>
闫燕飞:Kafka的高性能揭秘及优化
查看>>
Dionaea蜜罐指南
查看>>
Redux源码分析--bindActionCreators篇
查看>>
iOS 网络编程(二)TCP协议小结
查看>>
OkHttp3.0解析——谈谈内部任务分发器dispatcher
查看>>
HTTP Header简介
查看>>
六、TextInput
查看>>
SSH的配置与管理
查看>>
Java并发编程----阻塞队列
查看>>
03 前端HTTP协议(图解HTTP) 之 HTTP报文内的HTTP信息
查看>>
linux 定时器怎么用? crontab 基础
查看>>
报警系统QuickAlarm之频率统计及接口封装
查看>>
iOS开发runtime实现KVO
查看>>