python爬虫学习日记(1)--获取验证码

最近发现python的爬虫比较容易实现,我是python零基础,就疯狂的搜索资料,实现一下简单的爬虫,首先是登录爬虫,找到我们学校的教务网站,其中我遇到的第一个难题就是验证码的获取,因为是零基础,所以参考一些教程。

    http://www.dabu.info/python-login-crawler-captcha-cookies.html

1.找地址

首先,我们要找到这个网站生成验证码的地址,这个地址我们可以通过查看他的源代码来实现。


就以黎明大学教务网为例,这个教务网的模板很多学校都在采用:

我就截取表单的验证码部分即可。

<td align="center" rowspan="3" >
<img  id="imgCode" src="../sys/ValidateCode.aspx" 
onclick="changeValidateCode(this)" alt="单击可更换图片!" 
style="CURSOR: pointer;">
<br>看不清,则单击图片!                                 
</td>


这里就可以知道,地址就是../sys/ValidateCode.aspx

组合一下地址就是http://jwmis.lmu.cn/sys/ValidateCode.aspx

也就是我们等一下要用到的地址了。

我们可以查看一下那个网页。

2.处理图片

    python爬虫学习日记(1)--获取验证码_第1张图片


果不其然,都是乱码,因为验证码分为两种。

1)直接处理成JPG/GIF/PNG或者其他格式,然后直接读取到一个图片地址。

2)接收用户触发,然后生成,再直接处理成图像,不读取到一个图片地址。

我们这里是第二种,我们要自己来读取他,到本地,再手动输入验证码。


# -*- coding: utf-8 -*-
import urllib2
#验证码的处理#
#验证码生成页面的地址#
im_url = 'http://jwmis.lmu.cn/sys/ValidateCode.aspx'
#读取验证码图片#
im_data = urllib2.urlopen(im_url).read()
#打开一个Code.PNG文件在D盘,没有的话自动生成#
f=open('d:\\Code.png','wb')
#写入图片内容#
f.write(im_data)
#关闭文件#
f.close()

这里包括两个部分:

1)打开那个生成验证码图片的页面,读取

2)将读取到的内容,保存成图片,下载到本地


我们这里的地址是可以随便写的,保存在你想保存的地方。

到这里我们就完成了验证码的一小部分。


by--LoDog




你可能感兴趣的:(爬虫,python)