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=".*?" target="_blank" class="btn btn-icon ">試讀</a></div><a data-target-dialog="login" href="#" 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=".*?" οnclick="moreurl\(this, {'aid': '.*?', 'src': 'tag'}, true, \'read.douban.com\'\)">(.*?)</a>' 9 reg = re.compile(reg) 10 rel = re.findall(reg,html) # rel是二維列表 11 return rel 12 13 ID = 0 14 price = 0 15 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 ID 24 fn.write("數量:%s\t總價:%s\t平均單價:%s\n" % (ID,price,"%.2f"%(price/ID))) 25 fn.close()#最后不要忘記關閉文件?
結果截圖如下:
?
?缺憾:有部分數據被漏掉了,繼續找原因中
?
轉載于:https://www.cnblogs.com/Bro-Young/p/5921135.html
總結
以上是生活随笔為你收集整理的Python项目之我的第一个爬虫----爬取豆瓣图书网,统计图书数量的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (王道408考研操作系统)第二章进程管理
- 下一篇: (计算机组成原理)第三章存储系统-第四节