使用的是 Python + Curl 的组合,
Python脚本用来写控制程序,网络部分由 Curl 完成。
curl 是一个网络应用程序,使用很方便,支持http ftp https telnet 等众多协议,
还有curllib,又很多语言的Bind,常见的和不常见的语言都支持,
有:
使用的是 Python + Curl 的组合,
Python脚本用来写控制程序,网络部分由 Curl 完成。
curl 是一个网络应用程序,使用很方便,支持http ftp https telnet 等众多协议,
还有curllib,又很多语言的Bind,常见的和不常见的语言都支持,
有:
Ada95 OCaml
Basic Pascal
C Perl
C++ PHP
Ch Postgres
Cocoa Python
D R
Dylan Rexx
Euphoria Ruby
Ferite Scheme
Gambas S-Lang
glib/GTK+ Smalltalk
Java SPL
Lisp Tcl
Lua Visual Basic
Mono Q
.NET wxWidgets
Object-Pascal XBLite
Basic Pascal
C Perl
C++ PHP
Ch Postgres
Cocoa Python
D R
Dylan Rexx
Euphoria Ruby
Ferite Scheme
Gambas S-Lang
glib/GTK+ Smalltalk
Java SPL
Lisp Tcl
Lua Visual Basic
Mono Q
.NET wxWidgets
Object-Pascal XBLite
还使用到了FireFox和它的Live HTTP Header插件,来得到HTTP Post的内容。
工具有了,讲一下怎么实现的:
HTTP POST:
curl.exe -d "post head" http://firstjob.com.cn/gic_web/residentcertificateapplymain.jsp > huji
其中post的内容是通过FireFox的Live HTTP Header插件得到的
其中post的内容是通过FireFox的Live HTTP Header插件得到的
控制:
控制是使用Python的,算法这样:
在23点以后,用os.system(cmd) 运行上面的CMD,
之后检查输出文件是否含有字符串 "今天的申请分额已满"
在23点以后,用os.system(cmd) 运行上面的CMD,
之后检查输出文件是否含有字符串 "今天的申请分额已满"
如果有,则等待30秒后重试,
如果没有,则认为成功,退出
如果没有,则认为成功,退出
程序下载 http://gudonghua.googlepages.com/residentcertificateapply.html