#爬虫的入门程序
#导入功能库
import urllib
#调用urllib的urlopen方法,第一个参数url为URL
response=urllib.urlopen("http://www.baidu.com")
print response.read( )
#爬虫程序添加data,header,然后post请求
#导入功能库库名 urllib urllib2
import urllib
import urllib2
#填写地址url
url = 'http://www.server.com/login'
#设置Headers 的参数
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
#设置data 参数是访问URL时要传送的数据
values = {'username' : 'cqc', 'password' : 'XXXX' }
#设置Headers 的属性
headers = { 'User-Agent' : user_agent }
#对data数据进行编码
data = urllib.urlencode(values)
#进行请求
request = urllib2.Request(url, data, headers)
#进行访问
response = urllib2.urlopen(request)
#返回获取到的网页内容
page = response.read()
#爬虫程序添加cookie
import urllib
import urllib2
import cookielib
filename = 'cookie.txt'
#声明一个MozillaCookieJar对象实例来保存cookie,之后写入文件
cookie = cookielib.MozillaCookieJar(filename)
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
postdata = urllib.urlencode({
'stuid':'2022050780',
'pwd':'54785851'
})
#登录教务系统的URL
loginUrl = 'http://jwxt.sdu.edu.cn:7890/pls/wwwbks/bks_login2.login'
#模拟登录,并把cookie保存到变量
result = opener.open(loginUrl,postdata)
#保存cookie到cookie.txt中
cookie.save(ignore_discard=True, ignore_expires=True)
#利用cookie请求访问另一个网址,此网址是成绩查询网址
gradeUrl = 'http://jwxt.sdu.edu.cn:7890/pls/wwwbks/bkscjcx.curscopre'
#请求访问成绩查询网址
result = opener.open(gradeUrl)
print result.read()
#正则表达式
import re
# 将正则表达式编译成Pattern对象,注意hello前面的r的意思是“原生字符串”
pattern = re.compile(r'a.c')
# 使用re.match匹配文本,获得匹配结果,无法匹配时将返回None
result1 = re.match(pattern,'abc')
if result1:
print(result1.group())
else:
print('匹配失败')