码迷,mamicode.com
首页 > 编程语言 > 详细

python实现爬取30页百度校园女神图片!

时间:2018-02-07 12:11:35      阅读:275      评论:0      收藏:0      [点我收藏+]

标签:.json   arch   lis   存在   data   tab   查找   result   idt   

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页百度校园女神图片!

标签:.json   arch   lis   存在   data   tab   查找   result   idt   

原文地址:http://blog.51cto.com/12831900/2069714

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!