首页 > 代码库 > Python项目之我的第一个爬虫----爬取豆瓣图书网,统计图书数量
Python项目之我的第一个爬虫----爬取豆瓣图书网,统计图书数量
今天,花了一个晚上的时间边学边做,搞出了我的第一个爬虫。学习Python有两个月了,期间断断续续,但是始终放弃,今天搞了一个小项目,有种丰收的喜悦。废话不说了,直接附上我的全部代码。
1 # -*- coding:utf-8 -*- 2 __author__ = ‘Young‘ 3 4 import re,urllib #urllib : 网页访问,返回网页的数据、内容 5 def my_get(ID):# 封装成函数方便调用 6 html = urllib.urlopen("https://read.douban.com/ebooks/tag/%E5%B0%8F%E8%AF%B4/?cat=book&sort=top&start="+str(ID))# urllib.urlopen() 打开豆瓣读书的网页 str(ID)--方便页面切换 7 html = html.read()# 解析返回内容 8 reg = r‘<span class="price-tag ">(.*?)元</span><a href="http://www.mamicode.com/.*?" target="_blank" class="btn btn-icon ">试读</a></div><a data-target-dialog="login" href="http://www.mamicode.com/#" class="require-login btn btn-info btn-cart "><i class="icon-cart"></i><span class="btn-text">加入购物车</span></a></div><div class="title"><a href="http://www.mamicode.com/.*?" onclick="moreurl\(this, {'aid': '.*?', 'src': 'tag'}, true, \‘read.douban.com\‘\)">(.*?)</a>‘ 9 reg = re.compile(reg)10 rel = re.findall(reg,html) # rel是二维列表11 return rel12 13 ID = 014 price = 015 fn = open(r‘G:\13_Python-Files\douban.txt‘,"a")# 存放数据的文件的存放地址 a 表示 可以向文件中追加写入16 while ID<=80:# 根不同页的网址分析得出规律,此处爬取前4页的内容17 my_list = my_get(ID)# my_list - 存放返回结果18 for i in my_list:19 fn.write("书名:%s-----------价格:%s\n" %(i[1],i[0]))20 price += float(i[0])# 价格是浮点型21 ID += 1#图书技术22 print i[0],i[1]23 print ID24 fn.write("数量:%s\t总价:%s\t平均单价:%s\n" % (ID,price,"%.2f"%(price/ID)))25 fn.close()#最后不要忘记关闭文件
结果截图如下:
缺憾:有部分数据被漏掉了,继续找原因中
Python项目之我的第一个爬虫----爬取豆瓣图书网,统计图书数量
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。