最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 爬蟲(chóng)圖片簡(jiǎn)單實(shí)現(xiàn)

 更新時(shí)間:2017年06月01日 14:41:56   作者:冰不語(yǔ)  
這篇文章主要介紹了Python 爬蟲(chóng)圖片簡(jiǎn)單實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下

Python 爬蟲(chóng)圖片簡(jiǎn)單實(shí)現(xiàn)

經(jīng)常在逛知乎,有時(shí)候希望把一些問(wèn)題的圖片集中保存起來(lái)。于是就有了這個(gè)程序。這是一個(gè)非常簡(jiǎn)單的圖片爬蟲(chóng)程序,只能爬取已經(jīng)刷出來(lái)的部分的圖片。由于對(duì)這一部分內(nèi)容不太熟悉,所以只是簡(jiǎn)單說(shuō)幾句然后記錄代碼,不做過(guò)多的講解。感興趣的可以直接拿去用。親測(cè)對(duì)于知乎等網(wǎng)站是可用的。

上一篇分享了通過(guò)url打開(kāi)圖片的方法,目的就是先看看爬取到的圖片時(shí)什么樣,然后再篩選一下保存。

這里用到了requests庫(kù)來(lái)獲取頁(yè)面信息,需要注意的是,獲取頁(yè)面信息的時(shí)候需要一個(gè)header,用以把程序偽裝成瀏覽器去訪問(wèn)服務(wù)器,不然可能會(huì)被服務(wù)器拒絕。然后用BeautifulSoup來(lái)過(guò)濾多余信息得到圖片地址。得到圖片后,根據(jù)圖片的大小過(guò)濾掉一些頭像、表情包之類的小圖片。最后打開(kāi)或者保存圖片的時(shí)候選擇就比較多了,OpenCV,skimage,PIL等都可以。

程序如下:

# -*- coding=utf-8 -*-
import requests as req
from bs4 import BeautifulSoup
from PIL import Image
from io import BytesIO
import os
from skimage import io

url = "https://www.zhihu.com/question/37787176"
headers = {'User-Agent' : 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Mobile Safari/537.36'}
response = req.get(url,headers=headers)
content = str(response.content)
#print content

soup = BeautifulSoup(content,'lxml')
images = soup.find_all('img')
print u"共有%d張圖片" % len(images)

if not os.path.exists("images"):
  os.mkdir("images")

for i in range(len(images)):
  img = images[i]
  print u"正在處理第%d張圖片..." % (i+1)
  img_src = img.get('src')
  if img_src.startswith("http"):
    ## use PIL
    '''
    print img_src
    response = req.get(img_src,headers=headers)
    image = Image.open(BytesIO(response.content))
    w,h = image.size
    print w,h
    img_path = "images/" + str(i+1) + ".jpg"
    if w>=500 and h>500:
      #image.show()
      image.save(img_path)

    '''

    ## use OpenCV
    import numpy as np
    import urllib
    import cv2

    resp = urllib.urlopen(img_src)

    image = np.asarray(bytearray(resp.read()), dtype="uint8")
    image = cv2.imdecode(image, cv2.IMREAD_COLOR)
    w,h = image.shape[:2]
    print w,h
    img_path = "images/" + str(i+1) + ".jpg"
    if w>=400 and h>400:
      cv2.imshow("Image", image)
      cv2.waitKey(3000)
      ##cv2.imwrite(img_path,image)

    ## use skimage

    ## image = io.imread(img_src)
    ## w,h = image.shape[:2]
    ## print w,h
    #io.imshow(image)
    #io.show()

    ## img_path = "images/" + str(i+1) + ".jpg"
    ## if w>=500 and h>500:
      ## image.show()
      ## image.save(img_path)
      ## io.imsave(img_path,image)

print u"處理完成!"

這里給出了多種選擇,供參考。

相關(guān)文章

  • Python基于二分查找實(shí)現(xiàn)求整數(shù)平方根的方法

    Python基于二分查找實(shí)現(xiàn)求整數(shù)平方根的方法

    這篇文章主要介紹了Python基于二分查找實(shí)現(xiàn)求整數(shù)平方根的方法,涉及Python的二分查找算法與數(shù)學(xué)運(yùn)算相關(guān)技巧,需要的朋友可以參考下
    2016-05-05
  • 在python中求分布函數(shù)相關(guān)的包實(shí)例

    在python中求分布函數(shù)相關(guān)的包實(shí)例

    這篇文章主要介紹了在python中求分布函數(shù)相關(guān)的包實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-04-04
  • Python學(xué)生信息管理系統(tǒng)修改版

    Python學(xué)生信息管理系統(tǒng)修改版

    這篇文章主要為大家詳細(xì)介紹了python學(xué)生信息管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 圖解Python中的淺拷貝和深拷貝

    圖解Python中的淺拷貝和深拷貝

    這篇文章主要介紹了圖解Python中的淺拷貝和深拷貝,深拷貝,拷貝的程度深,自己新開(kāi)辟了一塊內(nèi)存,將被拷貝內(nèi)容全部拷貝過(guò)來(lái)了,淺拷貝,拷貝的程度淺,只拷貝原數(shù)據(jù)的首地址,然后通過(guò)原數(shù)據(jù)的首地址,去獲取內(nèi)容,需要的朋友可以參考下
    2023-11-11
  • Python?編程操作連載之字符串,列表,字典和集合處理

    Python?編程操作連載之字符串,列表,字典和集合處理

    這篇文章主要介紹了Python?編程操作連載之字符串,列表,字典和集合處理,文章圍繞主題相關(guān)資料展開(kāi)詳細(xì)的內(nèi)容介紹,需要的朋友可參考一下下面文章內(nèi)容
    2022-06-06
  • Selenium控制瀏覽器常見(jiàn)操作示例

    Selenium控制瀏覽器常見(jiàn)操作示例

    這篇文章主要介紹了Selenium控制瀏覽器常見(jiàn)操作,結(jié)合實(shí)例形式分析了Selenium針對(duì)瀏覽器的窗口大小控制、前進(jìn)、后退、刷新、截屏等相關(guān)操作技巧,需要的朋友可以參考下
    2018-08-08
  • opencv+python識(shí)別七段數(shù)碼顯示器的數(shù)字(數(shù)字識(shí)別)

    opencv+python識(shí)別七段數(shù)碼顯示器的數(shù)字(數(shù)字識(shí)別)

    本文主要介紹了opencv+python識(shí)別七段數(shù)碼顯示器的數(shù)字(數(shù)字識(shí)別),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • python實(shí)現(xiàn)音樂(lè)播放和下載小程序功能

    python實(shí)現(xiàn)音樂(lè)播放和下載小程序功能

    這篇文章主要介紹了python實(shí)現(xiàn)音樂(lè)播放和下載小程序功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Python利用 matplotlib 繪制直方圖

    Python利用 matplotlib 繪制直方圖

    這篇文章主要介紹了Python利用 matplotlib 模塊繪制直方圖相關(guān)屬性和方法,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2021-12-12
  • python實(shí)現(xiàn)微信自動(dòng)回復(fù)機(jī)器人功能

    python實(shí)現(xiàn)微信自動(dòng)回復(fù)機(jī)器人功能

    wxpy基于itchat,使用了 Web 微信的通訊協(xié)議,通過(guò)大量接口優(yōu)化提升了模塊的易用性,并進(jìn)行豐富的功能擴(kuò)展。這篇文章主要介紹了python實(shí)現(xiàn)微信自動(dòng)回復(fù)機(jī)器人功能,需要的朋友可以參考下
    2019-07-07

最新評(píng)論

赤水市| 广水市| 阿拉善左旗| 竹山县| 彰化县| 全椒县| 获嘉县| 彝良县| 平陆县| 海兴县| 馆陶县| 乌拉特中旗| 深泽县| 本溪| 虎林市| 湘阴县| 浠水县| 新建县| 海安县| 江都市| 永康市| 六枝特区| 正阳县| 枞阳县| 泽库县| 汶川县| 宜兴市| 太保市| 南康市| 永和县| 清新县| 绥滨县| 凤庆县| 鸡泽县| 龙江县| 潜江市| 屯门区| 涞源县| 卢湾区| 汝南县| 新蔡县|