Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】


Posted in Python onAugust 30, 2018

本文实例讲述了Python使用爬虫抓取美女图片并保存到本地的方法。分享给大家供大家参考,具体如下:

图片资源来自于www.qiubaichengren.com

代码基于Python 3.5.2

友情提醒:血气方刚的骚年。请

谨慎阅图!
谨慎阅图!!
谨慎阅图!!!

code:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import urllib
import urllib.request
import re
from urllib.error import URLError
class QsSpider:
  def __init__(self):
    self.user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
    self.header = {'User-Agent': self.user_agent}
    self.save_dir = './pic'
    self.url = 'http://www.qiubaichengren.com/%s.html'
  def start(self):
    for i in range(1, 10):
      self.load_html(str(i))
  def load_html(self, page):
    try:
      web_path = self.url % page
      request = urllib.request.Request(web_path, headers=self.header)
      with urllib.request.urlopen(request) as f:
        html_content = f.read().decode('gb2312')
        # print(html_content)
        self.pick_pic(html_content)
    except URLError as e:
      print(e.reason)
    return
  def save_pic(self, img):
    print(img)
    save_path = self.save_dir + "/" + img.replace(':', '@').replace('/', '_')
    if not os.path.exists(self.save_dir):
      os.makedirs(self.save_dir)
    print(save_path)
    urllib.request.urlretrieve(img, save_path)
    pass
  def pick_pic(self, html_content):
    regex = r'src="(http:.*?\.(?:jpg|png|gif))'
    patten = re.compile(regex)
    pic_path_list = patten.findall(html_content)
    for i in pic_path_list:
      self.save_pic(str(i))
      print(i)
spider = QsSpider()
spider.start()

代码运行后可得到如下N多大饱眼福的美女图:

Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python正则表达式用法总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python读写Redis数据库操作示例
Mar 18 Python
Python和perl实现批量对目录下电子书文件重命名的代码分享
Nov 21 Python
Python中利用原始套接字进行网络编程的示例
May 04 Python
Python正则表达式实现截取成对括号的方法
Jan 06 Python
python 获取list特定元素下标的实例讲解
Apr 09 Python
python多线程调用exit无法退出的解决方法
Feb 18 Python
Django框架使用内置方法实现登录功能详解
Jun 12 Python
python 字符串常用方法汇总详解
Sep 16 Python
详细分析Python collections工具库
Jul 16 Python
Python collections模块的使用方法
Oct 09 Python
Python 爬取淘宝商品信息栏目的实现
Feb 06 Python
教你使用TensorFlow2识别验证码
Jun 11 Python
Python使用一行代码获取上个月是几月
Aug 30 #Python
Python实现的读取/更改/写入xml文件操作示例
Aug 30 #Python
python实现录音小程序
Oct 26 #Python
Python图像处理之简单画板实现方法示例
Aug 30 #Python
浅析python中numpy包中的argsort函数的使用
Aug 30 #Python
浅析python3中的os.path.dirname(__file__)的使用
Aug 30 #Python
python语音识别实践之百度语音API
Aug 30 #Python
You might like
PHP面向对象的使用教程 简单数据库连接
2006/11/25 PHP
php下实现折线图效果的代码
2007/04/28 PHP
PHP Cli 模式设置进程名称的方法
2019/06/12 PHP
JavaScript入门学习书籍推荐
2008/06/12 Javascript
JavaScript面向对象之体会[总结]
2008/11/13 Javascript
JavaScript 工具库 Cloudgamer JavaScript Library v0.1 发布
2009/10/29 Javascript
几个比较经典常用的jQuery小技巧
2010/03/01 Javascript
Eclipse下jQuery文件报错出现错误提示红叉
2014/01/13 Javascript
jQuery实现获取绑定自定义事件元素的方法
2015/12/02 Javascript
AngularJS 如何在控制台进行错误调试
2016/06/07 Javascript
jquery过滤特殊字符',防sql注入的实现方法
2016/08/17 Javascript
Bootstrap Table的使用总结
2016/10/08 Javascript
纯javaScript、jQuery实现个性化图片轮播【推荐】
2017/01/08 Javascript
jquery Ajax 全局调用封装实例详解
2017/01/16 Javascript
详解Angular.js中$http拦截器的介绍及使用
2017/07/04 Javascript
Angular中ng-repeat与ul li的多层嵌套重复问题
2017/07/24 Javascript
Vue.js移动端左滑删除组件的实现代码
2017/09/08 Javascript
解决Mac安装thrift因bison报错的问题
2018/05/17 Javascript
详解Vue组件之间通信的七种方式
2019/04/14 Javascript
解决layui-open关闭自身窗口的问题
2019/09/10 Javascript
Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
2019/11/20 Javascript
OpenLayers3实现鼠标移动显示坐标
2020/09/25 Javascript
儿童编程python入门
2018/05/08 Python
Python3编码问题 Unicode utf-8 bytes互转方法
2018/10/26 Python
对python pandas读取剪贴板内容的方法详解
2019/01/24 Python
用Python批量把文件复制到另一个文件夹的实现方法
2019/08/16 Python
如何通过命令行进入python
2020/07/06 Python
python中slice参数过长的处理方法及实例
2020/12/15 Python
python的scipy.stats模块中正态分布常用函数总结
2021/02/19 Python
测绘工程系学生的自我评价
2013/11/30 职场文书
2014学雷锋活动心得体会
2014/03/10 职场文书
自我查摆剖析材料
2014/10/11 职场文书
暑期社会实践证明书
2014/11/17 职场文书
2015医德医风个人工作总结
2015/04/02 职场文书
MySQL优化之如何写出高质量sql语句
2021/05/17 MySQL
python的变量和简单数字类型详解
2021/09/15 Python