为什么学Python爬虫,都是因为小姐姐

性感美女小姐姐了解一下
这里写图片描述
看到这个图片,有没有一种………emmmmm…….刺激、兴奋的感觉

不管你们有没有 反正小编我是有一股冲劲的,自从知道了Python爬虫之后,只要看到有妹子的照片的网站,我就是想要批量下载一下!

不为别的,是为了能更好的学习Python! 我这样说你们信吗?

这里写图片描述

完整代码

# !/usr/bin/env python
# -*- coding:utf-8 -*-

import requests
import json


# 定义一个请求函数,接收页面参数
def get_page(page):
    # 把页面参数添加在url的字符串当中
    url = 'https://image.baidu.com/search/acjson?tn=resultjson_com&ipn=rj&ct=201326592&is=&fp=result&queryWord=美女&cl=2&lm=-1&ie=utf-8&oe=utf-8&adpicid=&st=-1&z=&ic=0&word=美女&s=&se=&tab=&width=&height=&face=0&istype=2&qc=&nc=1&fr=&cg=girl&pn={}&rn=30&gsm=1e'.format(
        page)
    # 请求网站,并且得到网站的响应
    #Python学习交流群:125240963,群内每天分享干货,包括最新的python企业案例学习资料和零基础入门教程,欢迎各位小伙伴入群学习交流
    response = requests.get(url)
    # 判断状态的状况
    if response.status_code == 200:
        # 返回文本文件信息
        return response.text


def json_load(text):
    # 把文本文件处理成字典格式
    jsondict = json.loads(text)
    # 创建一个空的合集,作用是去重
    urlset = set()
    # 检查字典里面是否包含了data这个值
    if 'data' in jsondict.keys():
        # 从jsondict中取出data这个字典里面的东西,依次赋值给items!
        for items in jsondict.get('data'):
            # 异常处理,不是每一行数据都包含thumbURL这个数据的
            try:
                urlset.add(items['thumbURL'])
            except:
                pass
    return urlset


def down_cont(url):
    response = requests.get(url)
    name = url.split(',')[-1].split('&')[0]
    if response.status_code == 200:
        # 表示,如果文件名字相同,就删除当前文件,然后再创建一个一样名字的文件
        with open('./images/%s.jpg' % name, 'wb') as f:
            print('正在下载当前图片: ' + url)
            # 以二进制的方法写入到本地
            f.write(response.content)


def main():
    for p in range(5):
        print('正在下载 %s页 的图片' % p)
        page = p * 30
        text = get_page(page)
        urlset = json_load(text)
        for url in urlset:
            down_cont(url)


if __name__ == '__main__':
    main()

运行结果

这里写图片描述
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_40925239/article/details/80627812