twill - 浏览网页的脚本语言
twill的用途
twill可以用来在命令行浏览网页,当然, 更可以用来自动获取某些信息, 特别是需要登录才能获取的. 例如图书馆的书什么时候到期.
twill是python的库, 可以直接在python中调用. 它还提供一个命令行程序, twill-sh
, 可以直接在命令行中调用. 以前用过mechanize(以前的clientform), 也是python的一个库, 但是感觉有点乱. twill的好处就是很直觉的操作, 例如输入用户名/密码,按"提交"按钮, 等等.
twill操作
具体操作它有自己的脚本格式. 下面是个简单的例子:
go http://xxx.com/login
formvalue 1 username YOURNAME
formvalue 1 password PASSWORD
submit
save_html xxx.html
以上代码就是到某网页,输入用户名/密码,提交,保存得到的页面. 然后则可以从保存的内容中提取需要的信息了.
其他
重导向死循环
有的网站设计有问题,例如我们council的图书馆,登录之后会进入死循环.只好先设置
config acknowledge_equiv_refresh false
登录后直接go
到相应页面即可.
替换品: curl
根据阮一峰的文章, curl也可以操作表单啥的. 这样就可以把数据拿下来了.