效果图

版本以及需要用到的第三方库

  • python 2.7
  • bs4 (安装命令: pip install bs4)
  • -

代码

#!/usr/bin/env python
#coding:UTF-8 #脚本名称: 爬妹纸写真图
#脚本作者: 剑齿虎
#脚本版本: python2.7
#第三方库: BeautifulSoup import urllib2
import os
from bs4 import BeautifulSoup
import sys
reload(sys)
sys.setdefaultencoding('gbk') #使用GBK编码 #函数: 进入下载写真集
def DownloadMz(url):
html = urllib2.urlopen(url).read()
dom_ = BeautifulSoup(html, 'html.parser') #解析为类似dom的对象 title = dom_.body.select(".main-title")[0].string #找元素:标题
count = dom_.body.select(".pagenavi")[0].findAll('a')[4].span.string #找元素:页数 #打印信息
print('title:' + title)
print('count:' + count)
print('url:' + url + "\n------------------") #保存图片
for i in range(1,int(count)):
get_url = url + "/" + str(i) #分页地址
save_path = os.getcwd() + "\\Download\\" + str(title) #保存目录 #创建保存目录, 如果不存在
if os.path.exists(save_path)==False:
os.mkdir(save_path) #保存图片
save_path = save_path + "\\" + str(i) + ".jpg" #保存文件名
SaveImage(get_url, save_path)
print("-- OK: "+ save_path) print("---------- END -----------\n\n") #函数: 保存每页图片
def SaveImage(get_url, savePath):
#获取图片地址
html = urllib2.urlopen(get_url).read()
dom_ = BeautifulSoup(html, 'html.parser')
src = dom_.select(".main-image")[0].p.a.img['src'] #保存呀保存
f = open(savePath, 'wb')
f.write(urllib2.urlopen(src).read())
f.close() #来啊~ 快活呀
url = "http://www.mzitu.com/japan/"
html = urllib2.urlopen(url).read()
bs = BeautifulSoup(html, 'html.parser')
pages = bs.body.select(".page-numbers")[5]['href'] #取总页数html #取爬取页面分页总数
cur_end = pages.rindex("/", 0)
cur_start = pages.rindex("/", 0, cur_end) + 1
page_count = pages[cur_start:cur_end] #页数 for i in range(1, int(page_count)):
page_url = url + "/page/" + str(i) #分页url
print("*** PAGE *** " + str(i) + "/" + str(page_count) + " $ " + page_url) dom_ = BeautifulSoup(urllib2.urlopen(page_url).read(), 'html.parser') #取分页dom
uls = bs.body.findAll('ul',{'id':'pins'})[0].findAll("li") #获取写真集列表 #进入下载写真集
for li in uls:
DownloadMz(str(li.span.a['href']))

目前正在学习python, 为了更能快速学到知识. 最好就是实践一个小项目, 一般看文档一般搜百度一边写程序, 虽说踩的坑不少, 但也积累了经验.

这个程序还存在个问题, 就是”写真集”没有分页, 下载完第一页就结束了. 有兴趣的小伙伴可以改改

“脚本目录需要新建一个 Download 目录, 脚本不会自己创建这个目录的~”

[python] 第一个爬虫, 爬妹子写真集图片的更多相关文章

  1. python简单小爬虫爬取易车网图片

    上代码: import requests,urllib.request from bs4 import BeautifulSoup url = 'http://photo.bitauto.com/' ...

  2. python爬虫-爬取百度图片

    python爬虫-爬取百度图片(转) #!/usr/bin/python# coding=utf-8# 作者 :Y0010026# 创建时间 :2018/12/16 16:16# 文件 :spider ...

  3. node:爬虫爬取网页图片

    代码地址如下:http://www.demodashi.com/demo/13845.html 前言 周末自己在家闲着没事,刷着微信,玩着手机,发现自己的微信头像该换了,就去网上找了一下头像,看着图片 ...

  4. Python项目之我的第一个爬虫----爬取豆瓣图书网,统计图书数量

    今天,花了一个晚上的时间边学边做,搞出了我的第一个爬虫.学习Python有两个月了,期间断断续续,但是始终放弃,今天搞了一个小项目,有种丰收的喜悦.废话不说了,直接附上我的全部代码. # -*- co ...

  5. erlang 爬虫——爬取网页图片

    说起爬虫,大家第一印象就是想到了python来做爬虫.其实,服务端语言好些都可以来实现这个东东. 在我们日常上网浏览网页的时候,经常会看到一些好看的图片,我们就希望把这些图片保存下载,或者用户用来做桌 ...

  6. Python编写网页爬虫爬取oj上的代码信息

    OJ升级,代码可能会丢失. 所以要事先备份. 一開始傻傻的复制粘贴, 后来实在不能忍, 得益于大潇的启示和聪神的原始代码, 网页爬虫走起! 已经有段时间没看Python, 这次网页爬虫的原始代码是 p ...

  7. 用python写一个爬虫——爬取性感小姐姐

    忍着鼻血写代码 今天写一个简单的网上爬虫,爬取一个叫妹子图的网站里面所有妹子的图片. 然后试着先爬取了三页,大概有七百多张图片吧!各个诱人的很,有兴趣的同学可以一起来爬一下,大佬级程序员勿喷,简单爬虫 ...

  8. Python写爬虫爬妹子

    最近学完Python,写了几个爬虫练练手,网上的教程有很多,但是有的已经不能爬了,主要是网站经常改,可是爬虫还是有通用的思路的,即下载数据.解析数据.保存数据.下面一一来讲.   1.下载数据 首先打 ...

  9. Python多线程爬虫爬取网页图片

    临近期末考试,但是根本不想复习!啊啊啊啊啊啊啊!!!! 于是做了一个爬虫,网址为 https://yande.re,网页图片为动漫美图(图片带点颜色........宅男福利 github项目地址为:h ...

  10. Python爬虫爬取网页图片

    没想到python是如此强大,令人着迷,以前看见图片总是一张一张复制粘贴,现在好了,学会python就可以用程序将一张张图片,保存下来. 今天逛贴吧看见好多美图,可是图片有点多,不想一张一张地复制粘贴 ...

随机推荐

  1. Adobe 构建 IDP 之路的经验与教训

    在过去的25年多时间里,我创建了软件组件和分布式框架,建立并领导了相关团队.近几年我致力于推动 Adobe 服务开发.部署和管理系统的开发人员生产力. 抽象陷阱 在云时代早期,Adobe 的每个团队都 ...

  2. unity添加Mysql的dll以及发布的问题

    最近在做一个unity项目中,要读取数据库,还是MySql的数据库.遇到了很多问题,写出来供大家参考一下. 关于unity引用第三方的Mysql.data.dll的问题: 这个地方有一个难点,正常的C ...

  3. 【有奖调研】HarmonyOS新物种,鸿蒙流量新阵地——元服务邀你来答题!

    "聊技术无话不谈,一起来吹吹元服务!畅聊你对元服务的想法,说不定,你就能撬动元服务的爆发增长!" 元服务(即原子化服务)是华为"轻量化"服务的新物种,可提供全新 ...

  4. HTTP请求:requests的进阶使用方法浅析

    1 背景 上篇文章讲解了requests模块的基础使用,其中有get.put.post等多种请求方式,使用data.json等格式做为请求参数,在请求体中添加请求头部信息的常见信息,如:headers ...

  5. 前端基于 radio 增强单选框组件

    前端基于radio增强单选框组件, 下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=12977 效果图如下:       # ## ...

  6. kafka学习笔记01

      类似于京东商城这种电商系统,一般会在前端页面进行埋点记录仪用户的行为数据,包括浏览.点赞.收藏.评论等.这些行为会被记录到日志服务器中,使用Flume进行采集,然后传入Hadoop中.   Flu ...

  7. 手撕HashMap(一)

    HashMap基本了解 1. jdk1.7之前,HashMap底层只是数组和链表 2. jdk1.8之后,HashMap底层数据结构当链表长度超过8时,会转为红黑树 3. HashMap利用空间换时间 ...

  8. .Net Core 如何数据导出 Excel?(EPPlus->OfficeOpenXml 实现固定列和动态列导出)

    〇.前言 对于将数据以 Excel 表格文件输出,还是比较常用的,也存在诸多情况,比如列固定或不固定.数据类型为 List<T>或 Json 对象等. 本文通过包 OfficeOpenXm ...

  9. 4.5 x64dbg 探索钩子劫持技术

    钩子劫持技术是计算机编程中的一种技术,它们可以让开发者拦截系统函数或应用程序函数的调用,并在函数调用前或调用后执行自定义代码,钩子劫持技术通常用于病毒和恶意软件,也可以让开发者扩展或修改系统函数的功能 ...

  10. Java protected 关键字详解

    很多介绍Java语言的书籍(包括<Java编程思想>)都对protected介绍的比较的简单,基本都是一句话,就是: 被 protected 修饰的成员对于本包和其子类可见.这种说法有点太 ...