基于python3 的百度图片下载器的实现代码


Posted in Python onNovember 05, 2019

自己写了玩的一个小脚本,百度图片下载

import re
import os
import requests
import hashlib
 
 
def dowmloadPic(html, keyword):
  pic_url = re.findall('"objURL":"(.*?)",', html, re.S)
 
  if len(pic_url) < 1:
    return 1
 
  i = 0
  for each in pic_url:
    print(i + 1, end=',')
    md5Str = hashlib.md5(each.encode("utf-8")).hexdigest()
 
    # 抓去链接
    oneStr = md5Str + '  ' + keyword + '  ' + each + '\n'
    with open('downText.txt', 'a+') as f:
      f.write(oneStr)
 
    # 下载图片
    # try:
    #   pic = requests.get(each, timeout=10)
    # except requests.exceptions.ConnectionError:
    #   print('链接超时,跳过此操作')
    #   continue
    #
    # kz = os.path.splitext(each)[-1]
    # photo = + keyword + '_' + str(i) + kz
    #
    # with open(photo, 'wb') as f:
    #   f.write(pic.content)
    i += 1
 
  print('\n')
  return 0
 
 
if __name__ == '__main__':
 
  word = input('enter a key word:')
  page = input('enter the page:')
 
  page = int(page)
  page = 1 if page < 1 else page
 
  url = 'http://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=' + word + '&ct=201965323&v=flip'
 
  p = 1
  while (p <= page):
    print(word + ',第[' + str(p) + ']页:')
 
    pn = (p - 1) * 20
    url = url + '&pn=' + str(pn)
    result = requests.get(url).content.decode('utf-8')
 
    code = dowmloadPic(result, word)
 
    if code:
      print('无相关数据,提前退出程序')
      break
    p = p + 1
 
  print('程序结束')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 中文字符串的处理实现代码
Oct 25 Python
Python开发WebService系列教程之REST,web.py,eurasia,Django
Jun 30 Python
Python写的PHPMyAdmin暴力破解工具代码
Aug 06 Python
利用Python中unittest实现简单的单元测试实例详解
Jan 09 Python
python 二分查找和快速排序实例详解
Oct 13 Python
PyQt5利用QPainter绘制各种图形的实例
Oct 19 Python
彻底理解Python list切片原理
Oct 27 Python
小白入门篇使用Python搭建点击率预估模型
Oct 12 Python
python实现控制COM口的示例
Jul 03 Python
深入了解Python 方法之类方法 &amp; 静态方法
Aug 17 Python
python中HTMLParser模块知识点总结
Jan 25 Python
一行代码python实现文件共享服务器
Apr 22 Python
Python hashlib模块加密过程解析
Nov 05 #Python
python set集合使用方法解析
Nov 05 #Python
基于python2.7实现图形密码生成器的实例代码
Nov 05 #Python
python中删除某个元素的方法解析
Nov 05 #Python
Django 框架模型操作入门教程
Nov 05 #Python
Python3.7 读取 mp3 音频文件生成波形图效果
Nov 05 #Python
python被修饰的函数消失问题解决(基于wraps函数)
Nov 04 #Python
You might like
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
2008/03/28 PHP
一步一步学习PHP(5) 类和对象
2010/02/16 PHP
解析thinkphp中的导入文件标签
2013/06/20 PHP
PHP生成不重复标识符的方法
2014/11/21 PHP
中高级PHP程序员应该掌握哪些技术?
2016/09/23 PHP
PHP基于phpqrcode类生成二维码的方法示例详解
2020/08/07 PHP
基于Jquery的动态创建DOM元素的代码
2010/12/28 Javascript
jQuery中需要注意的细节问题小结
2011/12/06 Javascript
js动态为代码着色显示行号
2013/05/29 Javascript
如何获取网站icon有哪些可行的方法
2014/06/05 Javascript
JavaScript设计模式学习之“类式继承”
2015/03/12 Javascript
jQuery右下角旋转环状菜单特效代码
2015/08/10 Javascript
JS实现仿雅虎首页快捷登录入口及导航模块效果
2015/09/19 Javascript
jQuery EasyUI框架中的Datagrid数据表格组件结构详解
2016/06/09 Javascript
js只执行1次的函数示例
2016/07/20 Javascript
JavaScript 函数模式详解及示例
2016/09/07 Javascript
原生js实现弹出层效果
2017/01/20 Javascript
详解jQuery中关于Ajax的几个常用的函数
2017/07/17 jQuery
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
详解vue组件基础
2018/05/04 Javascript
Node.js中,在cmd界面,进入退出Node.js运行环境的方法
2018/05/12 Javascript
记一次webapck4 配置文件无效的解决历程
2018/09/19 Javascript
性能优化篇之Webpack构建速度优化的建议
2019/04/03 Javascript
vue总线机制(bus)知识点详解
2020/05/10 Javascript
利用js canvas实现五子棋游戏
2020/10/11 Javascript
自己使用总结Python程序代码片段
2015/06/02 Python
python爬虫框架talonspider简单介绍
2017/06/09 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
在python中pandas读文件,有中文字符的方法
2018/12/12 Python
python实现静态web服务器
2019/09/03 Python
Python数据处理篇之Sympy系列(五)---解方程
2019/10/12 Python
CSS3 filter(滤镜)实现网页灰色或者黑色模式的代码
2020/11/30 HTML / CSS
2015年班长个人工作总结
2015/04/03 职场文书
幼儿园教师个人工作总结2015
2015/05/12 职场文书
安全教育培训心得体会
2016/01/15 职场文书
Vue3 Composition API的使用简介
2021/03/29 Vue.js