程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python爬蟲(三)—— 爬取網站圖片

編輯:Python

Python爬蟲 —— requests

  • Python爬蟲(三)—— 爬取網站圖片
    • 一、思路
    • 二、源代碼分析
    • 三、代碼
    • 四、運行結果

Python爬蟲(三)—— 爬取網站圖片

大家可以關注知乎或微信公眾號的share16,我們也會同步更新此文章。

一、思路

看到要爬取圖片時,第一思路就是如同爬取大學排名和小說時的方法大概一致,直接獲取網站url,就能爬到圖片。但實際上,當我們要爬取數據時,提示我們要進行網站驗證,如下;

那麼,我們該怎麼辦呢?

二、源代碼分析

免費聽了一節公開課後,我學到一些知識,現在分享給大家:

  1. 網站輸入要搜索的關鍵字,右擊選擇‘顯示頁面源文件’,如下操作;
  2. 爬取網站數據時,我們要用 r.text 還是 r.json() ?
    我們需查看要爬取網站的源代碼,若開頭是‘DOCTYPE html’,用 r.text ;若開頭是{key1:value1,···},用 r.json() ;根據實際情況,我們此時要用到的是r.json()。
    r.json():返回的是字典類型,可以通過鍵值獲取相應的值;
    r.text:返回的類型為字符串,無法通過鍵值獲取相應的值;
  3. 圖片數據儲存在 data鍵對應的值 中,以列表形式顯示,且列表中每個元素(儲存著圖片信息)都是一個字典;
  4. 每張圖片的鏈接儲存在 thumbURL鍵對應的值內;名稱儲存在 fromPageTitleEnc鍵對應的值內;
  5. 下載圖片
# 圖片以二進制格式儲存
with open('文件名', 'wb') as f:
r.write('要插入的文件名')

⸛⸛⸛⸛⸛⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛⸛⸛⸛⸛⸛

⸛⸛⸛⸛⸛⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛⸛⸛⸛⸛⸛

⸛⸛⸛⸛⸛⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛⸛⸛⸛⸛⸛

⸛⸛⸛⸛⸛⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛*⸛⸛⸛⸛⸛⸛⸛⸛⸛⸛

三、代碼

源代碼:點此下載

要注意的地方:

  1. getImage函數中,要根據實際情況修改file_addr;
  2. main函數中,kv中開始只定義了User-Agent,提示:forbid spider access;後續,增加了Accept和Accept-Language;

四、運行結果


謝謝大家


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved