# !/user/bin/python3
# -*- coding:utf-8 -*-import requests
import os
import re  # 使用正则表达式def getManyPages(keyword, pages):params=[]# 分页请求地址拼接 每页显示60个图片for i in range(0, 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','1488942260214': ''})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  baidtu_uncomplie(url):res = ''c = ['_z2C$q', '_z&e3B', 'AzdH3F']d= {'w':'a', 'k':'b', 'v':'c', '1':'d', 'j':'e', 'u':'f', '2':'g', 'i':'h', 't':'i', '3':'j', 'h':'k', 's':'l', '4':'m', 'g':'n', '5':'o', 'r':'p', 'q':'q', '6':'r', 'f':'s', 'p':'t', '7':'u', 'e':'v', 'o':'w', '8':'1', 'd':'2', 'n':'3', '9':'4', 'c':'5', 'm':'6', '0':'7', 'b':'8', 'l':'9', 'a':'0', '_z2C$q':':', '_z&e3B':'.', 'AzdH3F':'/'}if(url==None or 'http' in url):return urlelse:j= urlfor m in c:j=j.replace(m,d[m])for char in j:if re.match('^[a-w\d]+$',char):char = d[char]res= res+charreturn res# 根据路径和图片地址列表下载图到本地
def getImg(dataList, localPath):if not os.path.exists(localPath):  # 新建文件夹os.mkdir(localPath)x = 1for list in dataList:for i in list:if i.get('objURL') != None:print('正在下载:%s' % baidtu_uncomplie(i.get('objURL')))try:ir = requests.get(baidtu_uncomplie(i.get('objURL')))open(localPath + '%d.jpg' % x, 'wb').write(ir.content)x += 1except Exception as e:print(e)else:print('图片链接不存在')if __name__ == '__main__':# 参数1:关键字,参数2:要下载的页数dataList = getManyPages('小清新壁纸', 1)print(dataList)# 参数2:指定保存的路径getImg(dataList, 'D:/a/')

爬虫-获取百度图片壁纸保存至本地相关推荐

  1. python pil保存图片_python爬取百度图片并保存到本地

    安装scrapy pip install Scrapy 进入终端,切换到自己项目代码的工作空间下,执行 scrapy startproject baidu_pic_spider 生成如下工程文件: i ...

  2. python爬取一张图片并保存_python爬取百度图片并保存到本地

    安装scrapy pip install Scrapy 进入终端,切换到自己项目代码的工作空间下,执行 scrapy startproject baidu_pic_spider 生成如下工程文件: i ...

  3. python爬虫网页图片并保存到本地

    #coding=utf-8 import urllib import re #py抓取页面图片并保存到本地 #获取页面信息 def getHtml(url): page = urllib.urlope ...

  4. JAVA快速获取网络图片或者URL图片并保存到本地

    JAVA快速获取网络图片或者URL图片并保存到本地,直接上代码: import java.io.ByteArrayOutputStream; import java.io.File; import j ...

  5. node.js 爬虫 实现爬取网页图片并保存到本地

    node.js 爬虫 实现爬取网页图片并保存到本地 没有废话直接看代码 /*** 请求网站数据* 将数据保存本地文件*/ //不同协议引用不同模块,http https const http = re ...

  6. 简单的图片爬取,爬取豆瓣电影图片并保存到本地

    文章目录 前言 一.前提准备 1.对页面进行分析 2.准备框架 二.代码实现 三.总结 前言 这是本人第一次写博客,如有失误请见谅.这段时间,由于疫情原因,在家无聊,再加上这学期要学习爬虫这们课程.所 ...

  7. Python 爬虫 - 获取百度关键字搜索内容

    Python 爬虫 获取百度关键字搜索内容 https://www.cnblogs.com/w0000/p/bd_search_page.html Github headers内的参数,仅有UA时,返 ...

  8. (Metro学习三)图片uri保存到本地图片库

    已知网络上图片的uri地址,如何将网络图片保存到本地呢?代码如下: 保存图片到本地 private async Task SaveImageFromUrl(string uri, string fil ...

  9. php curl 下载图片,CURL实现下载远程图片并保存到本地

    WEB开发中我们经常使用一些简单的采集功能,这样可以自动把远程服务器的图片或资源直接采集保存到本地服务器中:实现下载远程图片并把它保存到本地有很多方法,比如可以直接能过file_get_content ...

最新文章

  1. 英特尔® 至强® 平台集成 AI 加速构建数据中心智慧网络
  2. PHP框架中的日志系统
  3. 成功解决tornado.application - ERROR - Exception in callback <bound method Nanny.memory_monitor of <Nanny
  4. 转载大神的一篇文章----【如何选择开源许可证?】
  5. 设计模式学习笔记——桥接(Bridge)模式
  6. 孙正义辞任阿里董事 阿里:软银仍有权提名一名董事进董事会
  7. DBUtils结果集处理
  8. 创建RMAN CATALOG
  9. 怎么把网页源码家入hexo博客_从零开始搭建个人博客(超详细)
  10. 什么是“云计算”,具体是怎么应用的?
  11. mysql中null与“空值”的坑
  12. pandas map applymap apply方法详解
  13. 浅谈React Event实现原理
  14. 解决putty自动断开问题
  15. 车型数据库设计 mongodb
  16. java之调用七牛云接口完成视频加水印
  17. DevOps 小组运维管理手册
  18. 第三章 枚举(炸弹人、火柴棍等式、全排列)
  19. 按“window+E”键出现【找不到应用程序】或【explore.exe找不到】的解决方法
  20. 电脑云便签怎么在桌面日历月视图上新增便签记录事情?

热门文章

  1. java 消息服务框架_Java消息服务 在 Spring Boot 中的使用
  2. mac系统Command键几个小用法
  3. Handler dispatch failed; nested exception is java.lang.NoSuchFieldError: TLS_ECDHE_ECDSA_WITH_CHACHA
  4. 多元函数的二阶泰勒展开推导
  5. 优思学院|六西格玛的方差分析怎么计算?
  6. VBA Project密码解除
  7. 基于springboot+vue的小区物业管理系统
  8. 旅游可视化系统flask+pyecharts
  9. Window10禁用驱动程序强制签名
  10. lammps基础命令及教程