基于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 相关文章推荐
web.py中调用文件夹内模板的方法
Aug 26 Python
python处理csv数据的方法
Mar 11 Python
用Python中的wxPython实现最基本的浏览器功能
Apr 14 Python
python中requests和https使用简单示例
Jan 18 Python
pandas.DataFrame选取/排除特定行的方法
Jul 03 Python
Empty test suite.(PyCharm程序运行错误的解决方法)
Nov 30 Python
机器学习实战之knn算法pandas
Jun 22 Python
将Pytorch模型从CPU转换成GPU的实现方法
Aug 19 Python
Pytorch实现LSTM和GRU示例
Jan 14 Python
python日期与时间戳的各种转换示例
Feb 12 Python
Python通过m3u8文件下载合并ts视频的操作
Apr 16 Python
Django操作cookie的实现
May 26 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
获取远程文件大小的php函数
2010/01/11 PHP
PHP学习之字符串比较和查找
2011/04/17 PHP
PHP中strtotime函数使用方法分享
2012/01/10 PHP
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
php 字符串中的\n换行符无效、不能换行的解决方法
2014/04/02 PHP
ThinkPHP使用心得分享-分页类Page的用法
2014/05/15 PHP
js关闭模态窗口刷新父页面或跳转页面
2012/12/13 Javascript
javascript 实现 秒杀,团购 倒计时展示的记录 分享
2013/07/12 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
2015/03/13 Javascript
浅谈Javascript数组(推荐)
2016/05/17 Javascript
JavaScript性能优化总结之加载与执行
2016/08/11 Javascript
实例浅析js的this
2016/12/11 Javascript
JS出现失效的情况总结
2017/01/20 Javascript
d3.js中冷门却实用的内置函数总结
2017/02/04 Javascript
Vue.js使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
2017/05/10 Javascript
Webpack中publicPath路径问题详解
2018/05/03 Javascript
jquery.param()实现数组或对象的序列化方法
2018/10/08 jQuery
使用webpack搭建vue项目及注意事项
2019/06/10 Javascript
vue实现多个echarts根据屏幕大小变化而变化实例
2020/07/19 Javascript
[02:46]2014DOTA2国际邀请赛 选手为你解读比赛MVP充满梦想
2014/07/09 DOTA
[16:14]教你分分钟做大人:米拉娜(HEROS)
2014/11/24 DOTA
Python实现的字典值比较功能示例
2018/01/08 Python
python判断变量是否为int、字符串、列表、元组、字典的方法详解
2020/02/13 Python
解决python中显示图片的plt.imshow plt.show()内存泄漏问题
2020/04/24 Python
html5使用Canvas绘图的使用方法
2017/11/21 HTML / CSS
NBA欧洲商店(法国):NBA Europe Store FR
2016/10/19 全球购物
美国本地交易和折扣网站:LocalFlavor.com
2017/10/26 全球购物
PAUL HEWITT手表美国站:德国北部时尚生活配饰品牌,船锚元素
2017/11/18 全球购物
存储过程和sql语句的优缺点
2014/07/02 面试题
数据员岗位职责
2013/11/19 职场文书
财务工作者先进事迹材料
2014/01/17 职场文书
教师年度考核评语
2014/04/28 职场文书
政府班子四风问题整改措施思想汇报
2014/10/08 职场文书
优秀党务工作者先进事迹材料
2014/12/25 职场文书
学习杨善洲同志先进事迹心得体会
2016/01/23 职场文书
python 三边测量定位的实现代码
2021/04/22 Python