实现比如说,对一个网页页面的一个按钮进行不断点击来刷票的;再比如穷举一个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。
现在正在研究需要身份验证的投票能否刷票。

PHP와 Python은 각각 고유 한 장점이 있으며 선택은 프로젝트 요구 사항을 기반으로해야합니다. 1.PHP는 간단한 구문과 높은 실행 효율로 웹 개발에 적합합니다. 2. Python은 간결한 구문 및 풍부한 라이브러리를 갖춘 데이터 과학 및 기계 학습에 적합합니다.

PHP는 죽지 않고 끊임없이 적응하고 진화합니다. 1) PHP는 1994 년부터 새로운 기술 트렌드에 적응하기 위해 여러 버전 반복을 겪었습니다. 2) 현재 전자 상거래, 컨텐츠 관리 시스템 및 기타 분야에서 널리 사용됩니다. 3) PHP8은 성능과 현대화를 개선하기 위해 JIT 컴파일러 및 기타 기능을 소개합니다. 4) Opcache를 사용하고 PSR-12 표준을 따라 성능 및 코드 품질을 최적화하십시오.

PHP의 미래는 새로운 기술 트렌드에 적응하고 혁신적인 기능을 도입함으로써 달성 될 것입니다. 1) 클라우드 컴퓨팅, 컨테이너화 및 마이크로 서비스 아키텍처에 적응, Docker 및 Kubernetes 지원; 2) 성능 및 데이터 처리 효율을 향상시키기 위해 JIT 컴파일러 및 열거 유형을 도입합니다. 3) 지속적으로 성능을 최적화하고 모범 사례를 홍보합니다.

PHP에서, 특성은 방법 재사용이 필요하지만 상속에 적합하지 않은 상황에 적합합니다. 1) 특성은 클래스에서 다중 상속의 복잡성을 피할 수 있도록 수많은 방법을 허용합니다. 2) 특성을 사용할 때는 대안과 키워드를 통해 해결할 수있는 방법 충돌에주의를 기울여야합니다. 3) 성능을 최적화하고 코드 유지 보수성을 향상시키기 위해 특성을 과도하게 사용해야하며 단일 책임을 유지해야합니다.

의존성 주입 컨테이너 (DIC)는 PHP 프로젝트에 사용하기위한 객체 종속성을 관리하고 제공하는 도구입니다. DIC의 주요 이점에는 다음이 포함됩니다. 1. 디커플링, 구성 요소 독립적 인 코드는 유지 관리 및 테스트가 쉽습니다. 2. 유연성, 의존성을 교체 또는 수정하기 쉽습니다. 3. 테스트 가능성, 단위 테스트를 위해 모의 객체를 주입하기에 편리합니다.

SplfixedArray는 PHP의 고정 크기 배열로, 고성능 및 메모리 사용이 필요한 시나리오에 적합합니다. 1) 동적 조정으로 인한 오버 헤드를 피하기 위해 생성 할 때 크기를 지정해야합니다. 2) C 언어 배열을 기반으로 메모리 및 빠른 액세스 속도를 직접 작동합니다. 3) 대규모 데이터 처리 및 메모리에 민감한 환경에 적합하지만 크기가 고정되어 있으므로주의해서 사용해야합니다.

PHP는 $ \ _ 파일 변수를 통해 파일 업로드를 처리합니다. 보안을 보장하는 방법에는 다음이 포함됩니다. 1. 오류 확인 확인, 2. 파일 유형 및 크기 확인, 3 파일 덮어 쓰기 방지, 4. 파일을 영구 저장소 위치로 이동하십시오.

JavaScript에서는 NullCoalescingOperator (??) 및 NullCoalescingAssignmentOperator (?? =)를 사용할 수 있습니다. 1. 2. ??= 변수를 오른쪽 피연산자의 값에 할당하지만 변수가 무효 또는 정의되지 않은 경우에만. 이 연산자는 코드 로직을 단순화하고 가독성과 성능을 향상시킵니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!
