怎么用requests爬取漂亮照片

本篇內(nèi)容主要講解“怎么用requests爬取漂亮照片”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“怎么用requests爬取漂亮照片”吧!

在貢嘎等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作按需定制網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),成都全網(wǎng)營銷推廣,外貿(mào)網(wǎng)站建設(shè),貢嘎網(wǎng)站建設(shè)費(fèi)用合理。

selenium是什么?


selenium自動化瀏覽器。就是這樣!你如何運(yùn)用這種力量完全取決于你自己。它主要用于自動化web應(yīng)用程序以進(jìn)行測試,但當(dāng)然不限于此。無聊的基于web的管理任務(wù)也可以(也應(yīng)該)自動化。

一些大型瀏覽器廠商已經(jīng)(或正在)采取措施使Selenium成為其瀏覽器的本地部分,這些廠商支持Selenium。它也是無數(shù)其他瀏覽器自動化工具、api和框架的核心技術(shù)。

可以說selenium的本職工作并不是用來爬蟲的,而是用于自動化Web應(yīng)用程序的測試目的。所以用selenium來爬知乎上面的圖其實(shí)是一種比較劍走偏鋒的做法,這也解釋為了為什么爬取量不是很樂觀。

什么是Requests

來看看 Requests的文檔:Requests 唯一的一個(gè)非轉(zhuǎn)基因的 Python HTTP 庫,人類可以安全享用。警告:非專業(yè)使用其他 HTTP 庫會導(dǎo)致危險(xiǎn)的副作用,包括:安全缺陷癥、冗余代碼癥、重新發(fā)明輪子癥、啃文檔癥、抑郁、頭疼、甚至死亡。

從這個(gè)幽默的介紹中,不難看出來Requests作者對于Requests非常有自信,我們用Requests爬知乎圖片也剛好驗(yàn)證了這一點(diǎn)。

爬起來!

我們按照慣例簡要說明一下爬蟲步驟:

0 1      
找到相關(guān)的問題,獲取問題id

怎么用requests爬取漂亮照片

怎么用requests爬取漂亮照片

如上圖所示,我們需要的id就在紅色框線里面。

0 2      
用requests解析網(wǎng)頁

核心代碼:

get_url = 'https://www.zhihu.com/api/v4/questions/'+id+'/answers?include=data[*].is_normal,admin_closed_comment,reward_info,is_collapsed,annotation_action,annotation_detail,collapse_reason,is_sticky,collapsed_by,suggest_edit,comment_count,can_comment,content,editable_content,voteup_count,reshipment_settings,comment_permission,created_time,updated_time,review_info,relevant_info,question,excerpt,relationship.is_authorized,is_author,voting,is_thanked,is_nothelp;data[*].mark_infos[*].url;data[*].author.follower_count,badge[*].topics&limit=5&offset='+str(offset)+'&sort_by=default'
       header = {            'User-Agent': "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:34.0) Gecko/20100101 Firefox/34.0",            'Host': "www.zhihu.com",        }
       r = requests.get(get_url, verify=False, headers=header)        content = r.content.decode("utf-8")        txt = json.loads(content)

我們把網(wǎng)頁信息解析到了txt中。

0 3      
匹配獲得圖片地址

核心代碼:

imgUrls = re.findall(r'data-original="([^"]+)"', str(txt))imgUrls = list(set(imgUrls))for imgUrl in imgUrls:            try:                splitPath = imgUrl.split('.')                fTail = splitPath.pop()                print(fTail)                if len(fTail) > 3 :                    fTail = 'jpg'                fileName = path +"/" + str(number) + "."+fTail                                img_data = urllib.request.urlopen(imgUrl).read()

在獲取txt后,我們需要用正則表達(dá)式匹配圖片的地址,然后根據(jù)這個(gè)地址下載圖片到本地。

到此,相信大家對“怎么用requests爬取漂亮照片”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

網(wǎng)站題目:怎么用requests爬取漂亮照片
轉(zhuǎn)載來源:http://muchs.cn/article36/ijchpg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、域名注冊外貿(mào)建站、網(wǎng)站設(shè)計(jì)公司、軟件開發(fā)、App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)