前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何定制一款12306抢票浏览器——构架

如何定制一款12306抢票浏览器——构架

作者头像
方亮
发布2019-01-16 10:39:33
7090
发布2019-01-16 10:39:33
举报
文章被收录于专栏:方亮方亮

        快春节了,火车票一票难求。虽然黄牛市场冷淡了,但是互联网“娱乐界”却越来越闹腾了。先是猎豹等浏览器推出抢票专版(插件),然后是铁道部约谈金山,之后流传工信部叫停抢票插件,之后再是工信部出面否认,最后金山某某人在视频上鄙视了一下铁道部:称愿意提供技术支持……(转载请指明出于breaksoftware的csdn博客)

        我也是抢票大军中的一员。记得上个周六,我早早的爬了起来抢票,结果看着票一张张减少,而自己始终没有抢到一张票!!有点愤怒!能怎么办?只能不停的刷呗!我是从上午10点一直刷到下午3点,才刷到一张7号下午的票。这迫使我7号下午得请半天假。晚上和老爸汇报了下抢票战果,老爸问我:你自己怎么不写个抢票软件呢?是的,从那天上午10点起,我就开始了这个想法——定制一款抢票软件。可以说,经过一个星期的编写,大致可以使用了,而且我实现了猎豹等浏览器没有的功能——自动识别验证码。虽然准确度无法达到100%,但是准确度在50%以上是没问题的(我验证了十几个验证码的自动识别,不对的大概就3个左右)。我是准备在订购返程票之前将这个工具写好,并提供给朋友使用。但是我昨天发现,12306将验证码改了!以前的特征也基本不在了,这使得我这个软件中最大的亮点——验证码自动识别失效!这个对我打击挺大的。我也就只能在CSDN上分享下我在编写12306抢票浏览器时的思考和问题。

构架

        一提到构架,我就觉得心虚。其实我这个压根没什么构架。来点实际的,设想一下抢票这个场景:

        人物:一个人、一台开着12306网页的电脑。

        事件:一个人通过键盘和鼠标在12306页面上进行输入和点击。

        我们可以将这个场景简化:

        这个人就是一个“进程”,他不吃饭不用陪女朋友更不用上厕所,它要做的就是操作12306这个页面。

        打开12306网页的浏览器也是个进程,这个进程中执行一系列复杂的网络传输和渲染操作。相对来说“人”这个进程做的事就很简单了,因为它很单纯,目标唯一,我们甚至可以把它看成一个单线程进程。但是进程间通信可能又是个麻烦点,虽然这个技术不麻烦,但是从实用角度说,能不那么复杂就别那么复杂。那如何弄呢?我们可以把“人”这个进程和12306浏览器合并为一个进程,“人”只是这个浏览器进程中的一个线程。我们可以将“人”这个线程想成是个非常独立于浏览器的线程,它们之间似乎是割裂的,但是又在流程上存在着一定的关系。这个就是我说的“构架"。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013年01月28日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
验证码
腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档