python爬取美空網女神圖片(python爬取美女圖片程序)

本文目錄一覽:

圖片自動下載神器!一鍵獲取全網圖片

大家好,我是九劍。

經常玩電腦的兄弟們應該知道Python,易語言這種神奇的東西,可以在線爬取網上的一些數據,甚是好用。

然而Python畢竟是一種編程語音,想要短時間內去學習並掌握並不是一件容易的事情,更別提實操爬取數據了。

其實從需求上來說,普通用戶無非就是 爬取一些圖片文字 等等用來欣賞自用數據,比如一些小姐姐圖片。

所以這次,九劍為大家帶來一個神器,你只需要輸入相關關鍵詞,工具就會為你 搜集全網圖片,並且無需打開鏈接,可以直接批量保存 !

關鍵詞4K圖下載器(Windows)

無廣告,免登錄,且免費

打開工具後你就會發現該工具的良心之處了,整體界面為一個小窗口, 沒有任何廣告彈窗,也沒有任何註冊登錄 的選項!

所有功能一目了然,包括什麼 搜索圖片、保存圖片、關鍵詞輸入、設置保存路徑 等等,小小白看了都能直接上手操作!

別看它小,功能確是異常強大,某種意義上來說,這TM就是可視化編程,沒錯,這就是年輕人的第一個程序。

全網搜索,光速保存

首先設置好路徑,然後直接 輸入關鍵詞,點擊搜素圖片,工具就會為你進行在線搜索超高清圖片 ,基本都是 1080P 以上!

這裡我們來嘗試一下 輸入關鍵詞:動漫美女 ,搜索後可以發現沒有任何延遲,工具直接將搜索結果展示了出來!

由於該工具會直接搜全網圖片,所以搜索期間我們也可以點擊 停止採集圖片 ,然後直接點擊開始 保存圖片 ,工具就會批量將圖片保存到相關路徑!

基本上保存圖片都是非常的快,保存好後這裡直接去相關路徑隨便打開一張下載的圖片進行查看,畫質都非常的清晰,屬於那種直接可以當桌面屏保的圖片!

1.點贊並點擊我頭像關注

2.關注後私信我回復:28

python3 爬取圖片異常的原因?

我們在下載文件時,一會會採取urlretrieve或是requests的get方式,

from urllib.request import urlretrieve

urlretrieve(self.url, filename=”xxx.png”)

但對於連續下載,各個文件保存是需要時間的,而程序運行永運是快於存儲的,我懷疑這是水管里流水速度與缸的大小不合適的原因,那可以試試下面這種方式:

r = requests.get(url, stream=True)

with open(local_filename, ‘wb’) as f:

for chunk in r.iter_content(chunk_size=1024):

if chunk: # filter out keep-alive new chunks

f.write(chunk)

f.flush()

python爬取圖片時忽略了一些圖片

真實圖片地址是在客戶端javascript代碼中計算出來的.

你需要尋找

span class=”img-hash”Ly93dzMuc2luYWltZy5jbi9tdzYwMC8wMDczdExQR2d5MWZ3Z3h6ajlrMGtqMzBpYjBramtnaS5qcGc=/span

這樣的內容,取出

Ly93dzMuc2luYWltZy5jbi9tdzYwMC8wMDczdExQR2d5MWZ3Z3h6ajlrMGtqMzBpYjBramtnaS5qcGc=

這段內容,做base64解碼即得圖片地址。

相應的腳本在

//cdn.jandan.net/static/min/91798e4c623fa60181a31d543488217eB2GDr79r.03100001.js

這段內容你通過get_page()爬到地頁面中有,同樣,該頁面中有這樣的html(為便於閱讀已重排格式):

div class=”text”

  span class=”righttext”

    a href=”//jandan.net/ooxx/page-34#comment-4001800″4001800/a

  /span

  p

    img src=”//img.jandan.net/img/blank.gif” onload=”jandan_load_img(this)” /

    span class=”img-hash”Ly93dzMuc2luYWltZy5jbi9tdzYwMC8wMDczdExQR2d5MWZ3Z3h6ajlrMGtqMzBpYjBramtnaS5qcGc=/span

  /p

/div

這個img的onload調用的函數就在前面給出的那個js文件中:

function jandan_load_img(b){

  var d=$(b);

  var f=d.next(“span.img-hash”);

  var e=f.text();

  f.remove();

  var c=jdDw3Ldvi4NcbKboi4X19hCAmdC3Q3aZvN(e,”DGmLfT4H73yJdXXpXs3pw7uAiICcflZS”);

  var a=$(‘a href=”‘+c.replace(/(\/\/\w+\.sinaimg\.cn\/)(\w+)(\/.+\.(gif|jpg|jpeg))/,”$1large$3″)+

          ‘” target=”_blank” class=”view_img_link”[查看原圖]/a’);

  d.before(a);

  d.before(“br”);

  d.removeAttr(“onload”);

  d.attr(“src”,location.protocol+c.replace(/(\/\/\w+\.sinaimg\.cn\/)(\w+)(\/.+\.gif)/,”$1thumb180$3″));

  if(/\.gif$/.test(c)){

    d.attr(“org_src”,location.protocol+c);

    b.onload=function(){

      add_img_loading_mask(this,load_sina_gif)

  }

}

它調用了jdDw3Ldvi4NcbKboi4X19hCAmdC3Q3aZvN對img-hash的內容做解碼,這個函數同樣在這個js文件中:

var jdDw3Ldvi4NcbKboi4X19hCAmdC3Q3aZvN=function(o,y,g){

  var d=o;var l=”DECODE”;

  var y=y?y:””;

  var g=g?g:0;

  var h=4;

  y=md5(y);

  var x=md5(y.substr(0,16));

  var v=md5(y.substr(16,16));

  …中間部分略去…

  if(l==”DECODE”){

    m=base64_encode(m);

    var c=new RegExp(“=”,”g”);

    m=m.replace(c,””);

    m=u+m;

    m=base64_decode(d)

  }

return m

};

你只需要在Python使用相應的庫對抓取到的img-hash內容做解碼即可得到圖片地址。

你使用了str的find來從文本中定位位置,這樣做太麻煩了,太多的代碼細節,使用re模塊做正則匹配就簡單很多,更快的是直接使用現有的爬蟲庫.

使用re進行正則匹配,只需要使用正則式’span class=”img-hash”(.+?)’即可提取出該頁面中所有加密的圖片地址。

import re

import base64

pat = re.compile(‘span class=”img-hash”(.+?)’)

def get_imgurls(url):

    urls = []

    for imgurl in pat.findall(url_open(url).decode(‘utf-8’)):

        .append(str(base64.b64decode(imgurl), ‘utf-8’))

    return urls

然後就可以對get_imgurls返回的列表遍歷,逐個交給save_img處理了。

使用爬取庫也只需要尋找span,從中找出class=’img-hash’即可讀取text。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/236442.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:00
下一篇 2024-12-12 12:00

相關推薦

  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • 用Python繪製酷炫圖片

    在本篇文章中,我們將展示如何使用Python繪製酷炫的圖片。 一、安裝Python繪圖庫 在使用Python繪製圖片之前,我們需要先安裝Python繪圖庫。Python有很多繪圖庫…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • Python購物車程序

    Python購物車程序是一款基於Python編程語言開發的程序,可以實現購物車的相關功能,包括商品的添加、購買、刪除、統計等。 一、添加商品 添加商品是購物車程序的基礎功能之一,用…

    編程 2025-04-29
  • 爬蟲是一種程序

    爬蟲是一種程序,用於自動獲取互聯網上的信息。本文將從如下多個方面對爬蟲的意義、運行方式、應用場景和技術要點等進行詳細的闡述。 一、爬蟲的意義 1、獲取信息:爬蟲可以自動獲取互聯網上…

    編程 2025-04-29
  • Vb運行程序的三種方法

    VB是一種非常實用的編程工具,它可以被用於開發各種不同的應用程序,從簡單的計算器到更複雜的商業軟件。在VB中,有許多不同的方法可以運行程序,包括編譯器、發佈程序以及命令行。在本文中…

    編程 2025-04-29
  • 使用axios獲取返回圖片

    使用axios獲取返回圖片是Web開發中很常見的需求。本文將介紹如何使用axios獲取返回圖片,並從多個方面進行詳細闡述。 一、安裝axios 使用axios獲取返回圖片前,首先需…

    編程 2025-04-29
  • Python一元二次方程求解程序

    本文將詳細闡述Python一元二次方程求解程序的相關知識,為讀者提供全面的程序設計思路和操作方法。 一、方程求解 首先,我們需要了解一元二次方程的求解方法。一元二次方程可以寫作: …

    編程 2025-04-29
  • Python 圖片轉表格

    本文將詳細介紹如何使用Python將圖片轉為表格。大家平時在處理一些資料的時候難免會遇到圖片轉表格的需求。比如從PDF文檔中提取表格等場景。當然,這個功能也可以通過手動複製、粘貼,…

    編程 2025-04-29

發表回復

登錄後才能評論