疫情期间在家闲来无事,每天打游戏荒废了一段时间。我觉得自己不能在这么颓废下去,就立马起身写了一点python代码(本人只是python新手)。

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:1097524789

找来找去突然找到一个不错的网站(你懂得),看见上面的照片于是起来自己写了一个小程序能够自动爬取这个网站照片的小程序来练练手

上网站:

https://www.meizitu.com/a/xinggan_2_1.html

画面过于美好先打上一波马赛克,马赛克之前的模样。

自己想象一下

第一打开网站 我们按f12查看源代码发现,这里的图片的xpath只有缩略图,但是他的a标签里的href的网址有他大照片的地址,我们点进去查看后,发现img里面有src。

这里  如果只是单纯的爬取他的src,那我们爬取的就只有这一个页面,如果还要在爬取其他页面还要在修改地址很麻烦。

所以第一步我们用xpath先来定位缩略图里面a标签里面的href,将他生成一个列表,同时我们发现所有缩略图的xpath都是有规律的所以这样无疑减少了很多难度。

其二打开缩略图,发现图片的xpath也是很好获取

好了上源码

import requests

from lxml import etree

import time

class sprider(object):

def __init__(self):

self.header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'}

def url(self):

url = 'https://www.meizitu.com/a/xinggan_2_1.html'

response = requests.get(url,headers=self.header)

selector = etree.HTML(response.content)

for i in range(1,31):

url2 = selector.xpath('//*[@id="maincontent"]/div[1]/ul/li[%d]/div/div/a/@href' %(i))[0]

response2 = requests.get(url2,headers=self.header)

selector2 = etree.HTML(response2.content)

self.pc(selector2)

def pc(self,selector2):

for i in range(1,12):

time.sleep(2)

src = selector2.xpath('//*[@id="picture"]/p/img[%d]/@src' %(i))

title = selector2.xpath('//*[@id="picture"]/p/img[%d]/@alt' %(i))

print(title)

print(src)

self.write(src,title)

def write(self,src,title):

for a,b in zip(src,title):

name = b ".jpg"

print("正在抓取",name)

photo = requests.get(a,headers=self.header)

time.sleep(5)

with open(name,"wb") as f:

f.write(photo.content)

s = sprider()

s.url()

ps:这个只是我自己编写的一个小程序  仅供学习  想自己用的话还要结合自己的实际情况  比如User-Agent头  要替换成自己的

开始运行之后啊就可以看见一张张照片存放在自己的文件夹里了可能会比较慢  没加多线程  后续有时间我会在写一篇多线程的文章

见谅见谅

默认存放在这个程序所在的文件夹

注:本文只提供技术分享,请勿用作其他非法用途。如果造成任何法律部后果与本文作者无关

简单python爬虫编写,Python采集妹子图!的更多相关文章

  1. Python爬虫入门教程 2-100 妹子图网站爬取

    妹子图网站爬取---前言 从今天开始就要撸起袖子,直接写Python爬虫了,学习语言最好的办法就是有目的的进行,所以,接下来我将用10+篇的博客,写爬图片这一件事情.希望可以做好. 为了写好爬虫,我们 ...

  2. 零基础学习Python web开发、Python爬虫、Python数据分析,从基础到项目实战!

    随着大数据和人工智能的发展,目前Python语言的上升趋势比较明显,而且由于Python语言简单易学,所以不少初学者往往也会选择Python作为入门语言. Python语言目前是IT行业内应用最为广泛 ...

  3. Python协程爬取妹子图(内有福利,你懂得~)

    项目说明: 1.项目介绍   本项目使用Python提供的协程+scrapy中的选择器的使用(相当好用)实现爬取妹子图的(福利图)图片,这个学会了,某榴什么的.pow(2, 10)是吧! 2.用到的知 ...

  4. python (1)一个简单的爬虫: python 在windows下 创建文件夹并写入文件

    1.一个简单的爬虫:爬取豆瓣的热门电影的信息 写在前面:如何创建本来存在的文件夹并写入 t_path = "d:/py/inn" #本来不存在inn,先定义路径,然后如果不存在,则 ...

  5. Python爬虫《Python网络爬虫相关基础概念》

    引入 之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的应用还是从 ...

  6. 一个简单的python爬虫,以豆瓣妹子“http://www.dbmeizi.com/category/2?p= ”为例

    本想抓取网易摄影上的图,但发现查看html源代码时找不到图片的url,但firebug却能定位得到.(不知道为什么???) 目标是抓取前50页的爆乳图,代码如下: import urllib2,url ...

  7. Python网络爬虫 | Scrapy爬取妹子图网站全站照片

    根据现有的知识,写了一个下载妹子图(meizitu.com)Scrapy脚本,把全站两万多张照片下载到了本地. 网站的分析 网页的网址分析 打开网站,发现网页的网址都是以 http://www.mei ...

  8. Python爬虫入门教程 13-100 斗图啦表情包多线程爬取

    斗图啦表情包多线程爬取-写在前面 今天在CSDN博客,发现好多人写爬虫都在爬取一个叫做斗图啦的网站,里面很多表情包,然后瞅了瞅,各种实现方式都有,今天我给你实现一个多线程版本的.关键技术点 aioht ...

  9. python 爬虫系列09-异步斗图来一波

    斗图斗图,妈妈再也不怕我都不赢了 import requests from lxml import etree from urllib import request import os import ...

随机推荐

  1. EM算法的收敛性

    https://blog.csdn.net/kevinoop/article/details/80522477

  2. 数据可视化实例(六): 带线性回归最佳拟合线的散点图(matplotlib,pandas)

    https://datawhalechina.github.io/pms50/#/chapter3/chapter3 如果你想了解两个变量如何相互改变,那么最佳拟合线就是常用的方法. 下图显示了数据中 ...

  3. Bounding-Box(BB)regression

    最近在学习RCNN,对于Bounding-Box(BB)regression能够提高边界框的精确度,对于其内容产生了很大兴趣. 主要内容学习自大神博客:https://blog.csdn.net/bi ...

  4. bzoj3289Mato的文件管理

    bzoj3289Mato的文件管理 题意: 一共有n份资料,每天随机选一个区间[l,r],Mato按文件从小到大的顺序看编号在此区间内的这些资料.他先把要看的文件按编号顺序依次拷贝出来,再用排序程序给 ...

  5. Python+selenium+unittest+HTMLTestReportCN单元测试框架分享

    分享一个比较基础的,系统性的知识点.Python+selenium+unittest+HTMLTestReportCN单元测试框架分享 Unittest简介 unittest是Python语言的单元测 ...

  6. 【JVM之内存与垃圾回收篇】类加载子系统

    类加载子系统 概述 完整图如下: 如果自己想手写一个 Java 虚拟机的话,主要考虑哪些结构呢? 类加载器 执行引擎 类加载器子系统作用 类加载器子系统负责从文件系统或者网络中加载 Class 文件, ...

  7. 程序员每日一乐:html动态烟花设计 3D

    3D版烟花 效果图:file:///C:/Users/QianXin/Desktop/3D%E7%83%9F%E8%8A%B1.html 经过一天的的工作或者学习是否感到枯燥乏味?现在的你是否想找些乐 ...

  8. 小白入门python新手教程python

    python教程很多,但是需要自学教程更好一些,看自学python教程3遍,然后一步步操作,7天后就会有很大的收货. 要向数据处理方向走,数据处理需要网络爬虫的知识,且更加精进.下面是我从网上查找这方 ...

  9. Java 线程池记录

    Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程.newFixe ...

  10. html层重叠 相同尺寸透明flash重叠的解决办法

    <EMBED style="z-index:1; position:absolute; top:110px;" src="http://www.jintaisd.c ...