python數(shù)據(jù)爬下來保存的位置
昨天下班后忽然興起想寫一個爬蟲抓抓網(wǎng)頁上的東西?;艘粋€鐘簡單學習了python的基礎語法,然后參照網(wǎng)上的例子自己寫了個爬蟲。
python數(shù)據(jù)爬下來保存在本地,一般是文件或數(shù)據(jù)庫中,但是文件形式相比要更加簡單,如果只是自己寫爬蟲玩,可以用文件形式來保存數(shù)據(jù)。
#coding=utf-8
import urllib.request
import re
import os
'''
Urllib 模塊提供了讀取web頁面數(shù)據(jù)的接口,我們可以像讀取本地文件一樣讀取www和ftp上的數(shù)據(jù)
urlopen 方法用來打開一個url
read方法 用于讀取Url上的數(shù)據(jù)
'''
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
經(jīng)測試,基本功能還是可以實現(xiàn)的?;ǖ妮^多的時間就是正則匹配哪里,因為自己對正則表達式也不是非常熟悉。所以還是花了點時間。
注:上面的程序基于 python 3.5。python3 和 python2 還是有些區(qū)別的。我剛開始看基礎語法的時候就栽了一些坑里。
以上就是python數(shù)據(jù)爬下來保存在哪里的詳細內(nèi)容,感謝大家的學習和對腳本之家的支持。
相關文章
Python入門之三角函數(shù)sin()函數(shù)實例詳解
這篇文章主要介紹了Python入門之三角函數(shù)sin()函數(shù)實例詳解,分享了相關實例,具有一定參考價值,需要的朋友可以了解下。2017-11-11
pytorch更新tensor中指定index位置的值scatter_add_問題
這篇文章主要介紹了pytorch更新tensor中指定index位置的值scatter_add_問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06
詳解Python使用simplejson模塊解析JSON的方法
這篇文章主要介紹了Python使用simplejson模塊解析JSON的方法,實例代碼基于Pyhton2.x版本,文中最后還附了關于simplejson模塊的一些性能放面的討論,需要的朋友可以參考下2016-03-03
Java ExcutorService優(yōu)雅關閉方式解析
這篇文章主要介紹了Java ExcutorService優(yōu)雅關閉方式解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-05-05

