码迷,mamicode.com
首页 > 编程语言 > 详细

[Python]网络爬虫:北邮图书馆排行榜

时间:2015-04-17 14:02:36      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:python   爬虫   正则表达式   网络爬虫   cookie   

最近对爬虫比较感兴趣,就研究了一下。

推荐一个python爬虫博客http://blog.csdn.net/pleasecallmewhy/article/details/9305229点击打开链接。跟着博主的博客学了下来,自己动手编写了一个爬北邮图书馆排行榜的demo。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

#---------------------------------------
#   程序:bupt图书馆爬虫-排行榜
#   版本:0.1
#   作者:zhangxuan
#   日期:2015-04-15
#   语言:Python 2.7
#   操作:输入账号和密码
#   功能:
#---------------------------------------
' a test module '


__author__ = 'zhangxuan'

import urllib
import urllib2
import cookielib
import re



cookie = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie))
opener.addheaders = [('User-agent','Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:37.0) Gecko/20100101 Firefox/37.0')]

urllib2.install_opener(opener)

#需要POST的数据#
postdata=urllib.urlencode({
    'login_type':'e_card',
    'barcode':'2014110590',
    'password':'1105090',
    '_':''
})

#自定义一个请求#
req = urllib2.Request(
    url = 'http://10.106.0.217:8080/opac_two/reader/infoList.jsp',
    data = postdata
)

#访问该链接#
#result = opener.open(req)
result = urllib2.urlopen(req)

#打印返回的内容#
print result.read().decode('gbk').encode('utf-8')

#打印cookie的值
for item in cookie:
    print 'Cookie:Name = '+item.name
    print 'Cookie:Value = '+item.value


result = opener.open('http://10.106.0.217:8080/opac_two/top/top.jsp')

print u"""
---------------------------------------
---------------------------------------
"""

myPage = result.read()

myItems = re.findall('<div class=".*?">.*?<a href=".*?".*?target="_blank"> (.*?)</a>.*?</div>.*?<div class=".*?">(.*?)</div>',myPage,re.S)
for item in myItems:
    print item[0].decode('gbk').encode('utf-8')
    print item[1].decode('gbk').encode('utf-8')
代码大体仿照那个博客写的,只不过具体问题具体分析部分有修改,大家可以去看看他详细的讲解。

正则表达式取数据时因为不熟练费了不少力。

技术分享


取出书名以及被检索借阅的次数。

最后的截图:

技术分享


[Python]网络爬虫:北邮图书馆排行榜

标签:python   爬虫   正则表达式   网络爬虫   cookie   

原文地址:http://blog.csdn.net/zhangxbj/article/details/45094695

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!