激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python 爬蟲圖片簡單實現

Python 爬蟲圖片簡單實現

2020-11-14 00:26冰不語 Python

這篇文章主要介紹了Python 爬蟲圖片簡單實現的相關資料,需要的朋友可以參考下

Python 爬蟲圖片簡單實現

經常在逛知乎,有時候希望把一些問題的圖片集中保存起來。于是就有了這個程序。這是一個非常簡單的圖片爬蟲程序,只能爬取已經刷出來的部分的圖片。由于對這一部分內容不太熟悉,所以只是簡單說幾句然后記錄代碼,不做過多的講解。感興趣的可以直接拿去用。親測對于知乎等網站是可用的。

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

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

程序如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# -*- 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"處理完成!"

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

原文鏈接:http://blog.csdn.net/xingchenbingbuyu/article/details/72231180

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人毛片av在线 | 成人毛片一区 | 舌头伸进添的我好爽高潮网站 | 免费毛片在线 | 亚洲午夜久久久精品一区二区三区 | 国产精品免费观在线 | 欧美18videos性处按摩 | 日韩视频区 | 久久3p视频| 欧美日韩亚洲在线 | 欧美a∨亚洲欧美亚洲 | 4399一级成人毛片 | 国产精品久久久久久久久久免 | 天天鲁在线视频免费观看 | 国产视频导航 | 素人视频在线观看免费 | 伊人手机在线观看 | 网站毛片| 亚洲国产精品久久久久制服红楼梦 | 久久国产28 | 久久精品视频3 | 国产二区三区在线播放 | 久久国产夫妻视频 | av免费av | 欧美亚洲国产成人综合在线 | 性欧美极品xxxx欧美一区二区 | 国产999视频在线观看 | 亚洲综人网| 久久网站热最新地址4 | 精品一区二区三区中文字幕老牛 | 亚洲第一男人天堂 | 一本色道久久久888 香蕉视频99 | 欧美高清在线精品一区二区不卡 | 国产精品久久久久影院老司 | 国产成视频在线观看 | 国产福利视频在线观看 | 在线观看国产www | 免费a视频在线观看 | julieann艳星激情办公室 | 日韩做爰视频免费 | 欧美性生交xxxxx免费观看 |