目錄
如何写一个网页刷票器之类的东西?
Jun 17, 2016 am 08:31 AM
php
实现比如说,对一个网页页面的一个按钮进行不断点击来刷票的;再比如穷举一个4位的密码。是用什么实现的呢?PHP?写脚本?这样的东西是叫网页“脚本”吗?有没有实现的例子呢?
回复内容:
时隔一年,学习了一些知识,半年前就已经试着写了12306刷票器。今天偶然看到以前自己的提问,就来自问自答一下吧。第一,无论使用什么语言实现,首先要懂得原理——web最基本的原理是HTTP协议,要先去理解HTTP协议,知道什么是Get请求Post请求。
第二,弄懂网站的工作原理。所谓工作原理就是从后台服务器的数据如何到前端,前端的数据如何发送给服务器,以及服务器是如何知道每一次请求都是来自你这个用户的。也就是说明白cookie和session。
学习的途径可以试着学一种后台语言试着写个用户注册登录的demo,这样理解最深刻。
或者随便找个网站用chrome的F12把“控制台”,打开看Network里的每个请求。
当然最好还是学个一种后台语言,试着做个小网站。

第四,图像文字信息识别。这个是为了搞定验证码的,这个我研究不深,对于简单的验证码用ocr就可以。稍微有噪点之类的干扰的用Open CV也可以去除。当然,重叠、旋转等等的复杂验证码,需要更深入的“机器学习”等等知识了。
第五,写刷票工具。工具看写在什么平台了,windows、Linux还是Android?一般跑在windows上用的话,语言很多可供选择的,,C#、java都可以,或者直接写在网页上用javascript写ajax也行。
当然,用好工具和开源库会事半功倍, Apache有个HttpClient可以帮助模拟HTTP协议很方便HttpClient - HttpClient Home
最后,当然了,如果目的只是写一个刷票器,其实不需要如此大动干戈,去细究每个环节的原理和技术细节。但是我知道题主一定不只想做个简单的刷票器,刷票器只是个阶梯。这样学来的“刷票器”的技术一样可以进入教务处疯狂地采集照片做个facemash,然后顺手做个Facebook成为扎克伯格,改变世界,不是吗?
加油吧,年轻人。 反对排名第一的答案。
首先做个简单的刷票器没那么麻烦。
你可以学填表,七八分钟就能学会的东西干嘛搞这么高大上的感觉。
然后可以学习抓包用post或者get让刷票速度更快,最后你可以学习怎么换ip。
我高二时帮班主任做了个刷票软件,就用了一个晚上,功能齐全,成功帮班主任的女儿刷成第一名。
补充一点,你所谓的点击按钮就是填表,可以用vb的webbrowser控件实现,简单的不行。
穷举一个四位的密码,你用0123456789作为基底,然后从0123 0124....一个个试
最后再补充一下,脚本是解释执行,不生成机器代码,比如php,javascript(AJAX技术用到的语言),其它如c/c++,.net,delphi等都是编译型语言,是生成机器码的 我现在也在在琢磨这个东西,这是我之前写的一个程序C# 刷票程序 - woostundy,实现了构造Http请求和换IP。
现在正在研究需要身份验证的投票能否刷票。
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發
