昨天下班後忽然興起想寫一個爬蟲抓抓網頁上的東西。花了一個鐘簡單學習了python的基礎語法,然後參考網路上的例子自己寫了個爬蟲。 (推薦學習:Python視頻教程)
python資料爬下來保存在本地,一般是文件或資料庫中,但是文件形式相比要更加簡單,如果只是自己寫爬蟲玩,可以用文件形式來保存資料。
#coding=utf-8 import urllib.request import re import os ''' Urllib 模块提供了读取web页面数据的接口,我们可以像读取本地文件一样读取www和ftp上的数据 urlopen 方法用来打开一个url read方法 用于读取Url上的数据 ''' def getHtml(url): page = urllib.request.urlopen(url); html = page.read(); return html; def getImg(html): imglist = re.findall('img src="(http.*?)"',html) return imglist html = getHtml("https://www.zhihu.com/question/34378366").decode("utf-8"); imagesUrl = getImg(html); if os.path.exists("D:/imags") == False: os.mkdir("D:/imags"); count = 0; for url in imagesUrl: print(url) if(url.find('.') != -1): name = url[url.find('.',len(url) - 5):]; bytes = urllib.request.urlopen(url); f = open("D:/imags/"+str(count)+name, 'wb'); f.write(bytes.read()); f.flush(); f.close(); count+=1;
經過測試,基本功能還是可以實現的。花的較多的時間就是正規匹配哪裡,因為自己對正規表示式也不是非常熟悉。所以還是花了點時間。
註:上面的程式是基於 python 3.5。 python3 和 python2 還是有些差別的。我剛開始看基礎語法的時候就栽了一些坑洞。
以上是python資料爬下來保存在哪裡的詳細內容。更多資訊請關注PHP中文網其他相關文章!