日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python爬图片教程_python爬去妹子网整个图片资源教程(最详细版)

發布時間:2023/11/27 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python爬图片教程_python爬去妹子网整个图片资源教程(最详细版) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

爬取妹子網的低級教程連接如下:[爬妹子網](https://blog.csdn.net/baidu_35085676/article/details/68958267)

ps:只支持單個套圖下載,不支持整體下載

在說說我的這個爬蟲代碼的設計思路:

①當我們瀏覽這個網站時,會發現,每一個頁面的URL都是以網站的域名+page+頁數組成,這樣我們就可以逐一的訪問該網站的網頁了

②當我們看圖片列表時中,把鼠標放到圖片,右擊檢查,我們發現,圖片的內容由ul包裹的li組成,箭頭所指的地方為每個套圖的地址,這樣我們就可以進入套圖,一個這樣的頁面包含有24個這樣的套圖,我們用BeautifulSoup,處理。

③我們進入套圖,鼠標放到40處,右擊,發現該套圖圖片的最大圖片數為第十個span的值,而且每個套圖的url同①原理相同為套圖的url+第幾張圖片(如下圖3為第二張圖片),最后下載的url由一個class為main-titleDIV組成。提取img標簽的src屬性即可獲得下載鏈接

from bs4 import BeautifulSoup

import requests

import os

#反‘反盜鏈’

header = { 'Referer':'http://www.mzitu.com'}

for x in range(11,20):

#盜取第十一頁到19頁圖片

html_a=requests.get(base_url+str(x),headers=header)

soup_a=BeautifulSoup(html_a.text,features='lxml')

#解析第一個網頁

pages=soup_a.find('ul',{'id':'pins'}).find_all('a')

#選出a標簽,如第二步的箭頭所指的地方

b=1

for y in pages:

if(b%2!=0):

#因為一個li標簽里面有兩個a標簽,所以要去除重復

html=requests.get(y['href'],headers=header)

soup_b=BeautifulSoup(html.text,features='lxml')

#進入套圖,解析套圖

pic_max=soup_b.find_all('span')[10].text

#選出該套圖的最大圖片數

tittle=soup_b.find('h2',{'class':'main-title'}).text

os.makedirs('./img/'+str(tittle))

#制造一個目錄

for i in range(1,int(pic_max)+1):

#循環,下載套圖圖片,

href=y['href']+'/'+str(i)

html2=requests.get(href,headers=header)

soup2=BeautifulSoup(html2.text,features='lxml')

pic_url=soup2.find('img',alt=tittle)

html_name=requests.get(pic_url['src'],headers=header,stream=True)

file_name=pic_url['src'].split(r'/')[-1]

with open('./img/'+str(tittle)+'/'+file_name,'wb') as f:

#按32字節下載

for x in html_name.iter_content(chunk_size=32):

f.write(x)

b=b+1

print('ok')#判斷程序是否結束

from bs4 import BeautifulSoup

import requests

import os

import re

base_url='

header = { 'Referer':'http://www.mzitu.com'}

for x in range(61,62):

html_a=requests.get(base_url+str(x),headers=header)

soup_a=BeautifulSoup(html_a.text,features='lxml')

pages=soup_a.find('ul',{'id':'pins'}).find_all('a')

test=re.findall('"href":"(.*?)"',pages)

print(test)

b=1

for y in pages:

if(b%2!=0):

html=requests.get(y['href'],headers=header)

soup_b=BeautifulSoup(html.text,features='lxml')

pic_max=soup_b.find_all('span')[10].text

tittle=soup_b.find('h2',{'class':'main-title'}).text

u=str(tittle).replace(':','').replace('!','').replace('?','').replace(',','').replace(' ','')

os.makedirs('./img/'+u)

for i in range(1,int(pic_max)+1):

href=y['href']+'/'+str(i)

html2=requests.get(href,headers=header)

soup2=BeautifulSoup(html2.text,features='lxml')

pic_url=soup2.find('img',alt=tittle)

html_name=requests.get(pic_url['src'],headers=header,stream=True)

file_name=pic_url['src'].split(r'/')[-1]

with open('./img/'+u+'/'+file_name,'wb') as f:

for x in html_name.iter_content(chunk_size=32):

f.write(x)

b=b+1

print('ok')

以上代碼為原創代碼,

總結

以上是生活随笔為你收集整理的python爬图片教程_python爬去妹子网整个图片资源教程(最详细版)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。