1. 程式人生 > >python實現爬取30頁百度校園女神圖片!

python實現爬取30頁百度校園女神圖片!

dpi 分享圖片 ges pat path lis 校園 one sha

1、以下是源代碼

import requests

import os

def getManyPages(keyword,pages):

params=[]

for i in range(30,30*pages+30,30):

#以下是請求服務器參數,瀏覽器裏可以找到

params.append({

'tn': 'resultjson_com',

'ipn': 'rj',

'ct': 201326592,

'is': '',

'fp': 'result',

'queryWord': keyword,

'cl': 2,

'lm': -1,

'ie': 'utf-8',

'oe': 'utf-8',

'adpicid': '',

'st': -1,

'z': '',

'ic': 0,

'word': keyword,

's': '',

'se': '',

'tab': '',

'width': '',

'height': '',

'face': 0,

'istype': 2,

'qc': '',

'nc': 1,

'fr': '',

'pn': i,

'rn': 30,

'gsm': '1e',

'1517540092108': ''

})

url = 'https://image.baidu.com/search/acjson'

urls = []

for i in params:

urls.append(requests.get(url,params=i).json().get('data'))

return urls



def getImg(dataList, localPath):


if not os.path.exists(localPath): # 新建文件夾

os.mkdir(localPath)

x = 300

for list in dataList:

for i in list:

if i.get('middleURL') != None:

print('正在下載:%s' % i.get('middleURL'))

ir = requests.get(i.get('middleURL'))

open(localPath + '%d.jpg' % x, 'wb').write(ir.content)

x += 1

else:

print('圖片鏈接不存在')


if __name__ == '__main__':

dataList = getManyPages('校園女神',10) # 參數1:你想查找的圖片類型(我查找的是校園女神),參數2:要下載的頁數

getImg(dataList,'F:/pics/') # 參數2:保存的路徑,我這裏保存在F盤pics文件夾下


2、

技術分享圖片

3、執行之後的結果如下圖

技術分享圖片





python實現爬取30頁百度校園女神圖片!