摘要:一般常用爬蟲下載文本,圖片,視頻,聲音。此處以下載圖片為例,圖片也是相對(duì)最容易。格式的文件下載只要抓包或者得到請(qǐng)求鏈接,那么將上面的程序稍稍改動(dòng)一下,即可下載。比如只要能試聽(tīng),就會(huì)有鏈接。聲明部分參考了很有趣兒的爬蟲分享
一般常用爬蟲下載文本,圖片,視頻,聲音。此處以下載圖片為例,圖片也是相對(duì)最容易。
#-*- coding:utf-8 -*- import os,re,requests #獲取圖片鏈接(以百度圖片為例,因?yàn)椴糠謪⒖剂藇oidsky_很有趣兒的爬蟲分享) keyword=raw_input("please input what you want to serch:") url="https://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word="+keyword+"&ct=201326592&ic=0&lm=-1&width=&height=&v=flip" page=requests.get(url).text pic_link=re.findall(""objURL":"(.*?)",",page,re.S) #將圖片文件寫入本地 i=1 for item in pic_link: #需要添加捕獲異常,因?yàn)椴皇撬袌D片都能下載 try: pic=requests.get(item).content except requests.exceptions.ConnectionError: print "Sorry.The current pic is not avilible." continue filename=str(i)+(".jpg") path=os.path.join("F:","001",filename)#這個(gè)地址是我電腦的地址,可修改輸出地址 file=open(path,"wb") file.write(pic) file.close() print ("have down", i) i+=1 print ("download" ,i-1)
總結(jié)和反思:
1、url變量本身就是str類型,無(wú)需糾結(jié)‘ ’或“ ”;
2、requests.get().text 獲取了鏈接地址的源代碼文本;
requests.get().text 獲取鏈接地址的二進(jìn)制內(nèi)容,用于將圖片,聲音,視頻等寫入這些文件中;
3、涉及這樣批量下載,需要處理捕獲異常,不然程序就會(huì)在出錯(cuò)處中斷,不會(huì)繼續(xù)運(yùn)行;
4、continue 使得程序即使報(bào)錯(cuò)了,也能繼續(xù)下一個(gè)循環(huán),即圖片下載;
5、在正則匹配中re.S參數(shù)設(shè)置,表示把字符串當(dāng)做一個(gè)整體,n也當(dāng)做字符串而不是換行,不因換行而重新匹配,可跨行匹配,。
6、MP3、MP4格式的文件下載,只要抓包或者F12得到請(qǐng)求鏈接,那么將上面的程序稍稍改動(dòng)一下,即可下載。比如:
只要能試聽(tīng),就會(huì)有鏈接。
聲明:部分參考了voidsky_很有趣兒的爬蟲分享:https://www.jianshu.com/p/19c...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/41261.html
摘要:知乎日?qǐng)?bào)代理首先感謝提供的分析使用詳情請(qǐng)參考他提供的參數(shù)和地址代理轉(zhuǎn)發(fā)的使用為前綴進(jìn)入代理路由啟動(dòng)界面圖像獲取后為圖像分辨率,接受任意的格式,為任意非負(fù)整數(shù),返回值均相同返回值示例最新消息等具體參考提供的分析中的使用方式以及參數(shù)含義。 項(xiàng)目說(shuō)明 這是一個(gè)基于express的node后端API服務(wù),當(dāng)時(shí)只是想抓取字幕組網(wǎng)站的下載資源,以備以后通過(guò)nas的方式去自動(dòng)下載關(guān)注的美劇。不過(guò)后來(lái)...
摘要:避免重定向重定向用和狀態(tài)碼,下面是一個(gè)有狀態(tài)碼的頭瀏覽器會(huì)自動(dòng)跳轉(zhuǎn)到域指明的。除此之外還有別的跳轉(zhuǎn)方式元標(biāo)簽和,但如果你必須得做重定向,最好用標(biāo)準(zhǔn)的狀態(tài)碼,主要是為了讓返回按鈕能正常使用。要提高性能,優(yōu)化這些響應(yīng)至關(guān)重要。 性能優(yōu)化 減少Http請(qǐng)求: 1.盡量減少HTTP請(qǐng)求數(shù) 80%的終端用戶響應(yīng)時(shí)間都花在了前端上,其中大部分時(shí)間都在下載頁(yè)面上的各種組件:圖片,樣式表,腳本,...
摘要:避免重定向重定向用和狀態(tài)碼,下面是一個(gè)有狀態(tài)碼的頭瀏覽器會(huì)自動(dòng)跳轉(zhuǎn)到域指明的。除此之外還有別的跳轉(zhuǎn)方式元標(biāo)簽和,但如果你必須得做重定向,最好用標(biāo)準(zhǔn)的狀態(tài)碼,主要是為了讓返回按鈕能正常使用。要提高性能,優(yōu)化這些響應(yīng)至關(guān)重要。 性能優(yōu)化 減少Http請(qǐng)求: 1.盡量減少HTTP請(qǐng)求數(shù) 80%的終端用戶響應(yīng)時(shí)間都花在了前端上,其中大部分時(shí)間都在下載頁(yè)面上的各種組件:圖片,樣式表,腳本,...
閱讀 3476·2023-04-25 18:52
閱讀 2488·2021-11-22 15:31
閱讀 1228·2021-10-22 09:54
閱讀 3017·2021-09-29 09:42
閱讀 612·2021-09-26 09:55
閱讀 915·2021-09-13 10:28
閱讀 1111·2019-08-30 15:56
閱讀 2111·2019-08-30 15:55