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实现的ini文件操作类分享
Nov 20 Python
Python基类函数的重载与调用实例分析
Jan 12 Python
Python合并两个字典的常用方法与效率比较
Jun 17 Python
python字符串连接方法分析
Apr 12 Python
PyChar学习教程之自定义文件与代码模板详解
Jul 17 Python
django ajax json的实例代码
May 29 Python
python实战教程之自动扫雷
Jul 13 Python
python异步实现定时任务和周期任务的方法
Jun 29 Python
Python实现Word表格转成Excel表格的示例代码
Apr 16 Python
Python实现疫情地图可视化
Feb 05 Python
Elasticsearch 索引操作和增删改查
Apr 19 Python
python blinker 信号库
May 04 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脚本的10个技巧(2)
2006/10/09 PHP
PHP session有效期问题
2009/04/26 PHP
PHP中使用file_get_contents post数据代码例子
2015/02/13 PHP
PHP判断来访是搜索引擎蜘蛛还是普通用户的代码小结
2015/09/14 PHP
谈谈PHP中substr和substring的正确用法及相关参数的介绍
2015/12/16 PHP
PHP简单实现文本计数器的方法
2016/04/28 PHP
Yii编程开发常见调用技巧集锦
2016/07/15 PHP
超轻量级的基于jquery的三级展开列表
2011/04/26 Javascript
解决JS中乘法的浮点错误的方法
2014/01/03 Javascript
jQuery选择器querySelector的使用指南
2015/01/23 Javascript
javascript模拟评分控件实现方法
2015/05/13 Javascript
JavaScript中标识符提升问题
2015/06/11 Javascript
Node.js与Sails ~项目结构与Mvc实现及日志机制
2015/10/14 Javascript
javascript动态添加checkbox复选框的方法
2015/12/23 Javascript
js document.getElementsByClassName的使用介绍与自定义函数
2016/11/25 Javascript
Angular.JS实现无限级的联动菜单(使用demo)
2017/02/08 Javascript
canvas实现刮刮卡效果
2017/03/14 Javascript
Ajax异步文件上传与NodeJS express服务端处理
2017/04/01 NodeJs
Vue多系统切换实现方案
2018/06/05 Javascript
angularjs下ng-repeat点击元素改变样式的实现方法
2018/09/12 Javascript
微信小程序实现简易table表格
2020/06/19 Javascript
vue实现PC端录音功能的实例代码
2019/06/05 Javascript
jQuery实现电梯导航模块
2020/12/22 jQuery
[03:33]TI9战队采访 - Infamous
2019/08/20 DOTA
使用Python的Bottle框架写一个简单的服务接口的示例
2015/08/25 Python
python列表生成器迭代器实例解析
2019/12/19 Python
keras实现调用自己训练的模型,并去掉全连接层
2020/06/09 Python
python 匿名函数与三元运算学习笔记
2020/10/23 Python
基于Python的接口自动化unittest测试框架和ddt数据驱动详解
2021/01/27 Python
Html5+CSS3+EL表达式问题小结
2020/12/19 HTML / CSS
印度在线内衣和时尚目的地:Zivame
2017/09/28 全球购物
买房子个人收入证明
2014/01/16 职场文书
幼儿园家长安全责任书
2014/07/22 职场文书
酒店管理失职检讨书
2014/09/16 职场文书
加强干部作风建设整改方案
2014/10/24 职场文书
实现一个简单得数据响应系统
2021/11/11 Javascript