我现在需要用python模拟注册一个网站。
注册页面的验证码是一个iframe的链接(应该不算是ajax吧?)
那么请问服务器端是如何保证这个iframe链接的验证码图片,对应的就是我当前提交的内容呢?
然后,相应的我应该如何处理我的程序呢?
这个涉及到HTTP
如何保存状态的问题。HTTP
本身是没有状态的,但是我们用浏览器访问一个网站的时候,浏览器和网站服务器之间可以使用cookie
、服务端session
、URL重写
等手段维持相互之间的状态。
也就是说,你前后多次访问同一个网站时,网站是知道这些访问是你发起的,而不是别人。
以你现在要做的事情为例子来说,就是当你打开注册页面时,网站就记录了你的身份信息,获取验证码图片时,网站会把图片对应的验证码保存到你的身份信息中,这样就把你和验证码图片关联起来了。等到你填写完点击提交时,网站拿到你填写的验证码,然后与之前保存的值进行比较,看是否一致,这样就知道你有没有输对验证码了。
关于你的程序该如何处理,给你一个思路:
首先你要拿到这个显示验证码图片的
iframe
的链接地址,然后发起HTTP请求,获取网页内容解析其中的内容,拿到验证码图片的地址,再发起HTTP请求,获得图片数据
拿到图片之后,就需要进行图片识别了,可以利用现有的库来做
把识别到的验证码放到你的注册信息中,提交