最近发现python的爬虫比较容易实现,我是python零基础,就疯狂的搜索资料,实现一下简单的爬虫,首先是登录爬虫,找到我们学校的教务网站,其中我遇到的第一个难题就是验证码的获取,因为是零基础,所以参考一些教程。
http://www.dabu.info/python-login-crawler-captcha-cookies.html
首先,我们要找到这个网站生成验证码的地址,这个地址我们可以通过查看他的源代码来实现。
就以黎明大学教务网为例,这个教务网的模板很多学校都在采用:
我就截取表单的验证码部分即可。
<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
也就是我们等一下要用到的地址了。
我们可以查看一下那个网页。
果不其然,都是乱码,因为验证码分为两种。
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