【爬虫实战】手把手教你用Python爬取某图网4000张图片
相信很多设计小伙伴有好的灵感,但是没有好的设计素材,今天它来了。摄图网4000张设计素材,取之不尽,如下图所示:
好了,废话不多说,开始用Python采集。
01需求分析
采集摄图网的素材图片,目标网址–>请求数据–>解析数据–>提取数据–>保存数据。
02技术栈
首先我们用到的技术包括:urllib,requests,bs4等。
03采集流程
加粗样式
1、分析网页结构
打开网址:https://699pic.com/paihang/tupian.html,分析网页结构,我们可以看到首页图片数据杂论,这里我们爬取的是"今日热门"的图片,点击发现更多:来到目标页面,拖动滚轮滑到底部,发现有40个分页,也就是我们今天要爬取的4000张设计图片:
2、发起请求
接着对列表中的每一条url进行遍历,然后发起请求:
for url in urllist: resp = requests.get(url,headers=hd) html = resp.content.decode('utf-8')
3、数据解析
得到了一个html对象,爬取页面数据信息后,需要对页面进行解析,这里我使用到的解析库是bs4(偏爱),当然xpath也是可以的。通过分析页面元素,我们发现每个翻页里面的图片都有这样的规律:
因此可以通过bs4的select方法抓取所有class='lazy’的img标签,得到一个列表,然后通过测试发现图片的链接存放在img标签的data-original属性里,通过img.attrs[‘data-original’]得到,再与’https:'进行字符串拼接,得到完整图片链接。
for img in imgs: img_url = img.attrs['data-original'] total_url = base_http_str + img_url print(total_url) # print('--'*60) imgurllist.append(total_url)
4.提取保存数据
最后运用urllib中的urlretrive方法,把图片保存到本地。
def writeData(imgurllist): for index,url in enumerate(imgurllist): urllib.request.urlretrieve(url,'image/'+ '%s.png'%index) print('第%s张图片下载完成'%index)
04运行爬虫
运行爬虫代码,效果如下:
图片就下载完成了,不过运用传统方法有点慢,下次试试多线程,提升爬虫效率。
燃烧秀发输出内容,如果有一丢丢收获,点个赞鼓励一下吧!
最后
上面是我收集整理的一些资料,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你。
如果你已经工作但是经常觉得难点很多,觉得自己测试方面学的不够精想要继续学习的,想转行怕学不会的, 都可以加入我们1033482984,群内可领取最新软件测试大厂面试资料和Python自动化、接口、框架搭建学习资料!微信公众号【软件测试小dao】
好文分享,希望能帮助到你们。
软件测试工程师应该如何提高自己的技能?送给迷茫的你(共勉)
全员编程的时代,你是否坚持不下去了?送给迷茫的你
面试简历实战不会写?进来手把手教你搞定
腾讯10年测试经验!推荐给测试工程师的50篇书籍!【建议收藏反复观看】
“小故事,大道理”,分享给现在处于迷茫中的你们【深有感悟】
【爬虫实战】手把手教你用Python爬取某图网4000张图片相关推荐
- 手把手教你使用Python爬取西刺代理数据,不用担心我封IP了!
/1 前言/ 前几天小编发布了手把手教你使用Python爬取西次代理数据(上篇),木有赶上车的小伙伴,可以戳进去看看.今天小编带大家进行网页结构的分析以及网页数据的提取,具体步骤如下. /2 首页分析 ...
- 用Python爬取彼岸图网图片
用Python爬取彼岸图网图片 *使用了 四个模块 import time import requests from lxml import etree import os 没有的话自行百度安装. ...
- 使用python爬取斗图网的图片
使用python爬取斗图网的图片 以下是代码部分: # -*- coding: utf-8 -*- """ Created on Wed Apr 14 14:41:42 ...
- python爬取千图网图片并保存_Python数据分析与挖掘实战-课程作业5爬取千图网某个频道的高清图片...
作业要求:爬取千图网(http://www.58pic.com)某个频道的高清图片 作业难点:正确找到图片链接并用正则表达式写出 代码如下: """ Created on ...
- python爬取千图网_python爬取lol官网英雄图片代码
python爬取lol官网英雄图片代码可以帮助用户对英雄联盟官网平台的皮肤图片进行抓取,有很多喜欢lol的玩家们想要官方的英雄图片当作自己的背景或者头像,可以使用这款软件为你爬取图片资源,操作很简单, ...
- 【爬虫实战】手把手教你使用python爬取美女图片
本文目录 写作缘起 上代码 思路分析 效果展示 写在最后 写作缘起 用python爬虫实现的图片资源下载器,一页页下载图片过于缓慢,当我们要欣赏一些好看的图片时一页页翻太复杂了,干脆写一个图片下载器 ...
- 手把手教你用python爬取人人贷网站借款人信息
P2P是近年来很热的一个行业,由于这个行业在国内兴起才不久,国内的很多学者对这个行业都兴趣盎然,在大学研究互联网金融的学者更是有一大群.小编是学金融出身,深知数据在做学术研究的重要性,之前有不少学互联 ...
- python爬取京东商品数据要先登录_手把手教你用python 爬取京东评论
本次python实战,主要目标是利用 Python爬取京东商品评论数,如上图所示:爬取"Python之父"推荐的小蓝书,这些信息主要包括用户名.书名.评论等信息. 爬取的网址url ...
- pythonqq音乐爬虫_手把手教你使用Python抓取QQ音乐数据(第二弹)
[一.项目目标] 通过Python爬取QQ音乐数据(一)我们实现了获取 QQ 音乐指定歌手单曲排行指定页数的歌曲的歌名.专辑名.播放链接. 此次我们在之前的基础上获取QQ音乐指定歌曲的歌词及前15个精 ...
最新文章
- Qt调用word 例子
- PHP支持模板,让ThinkPHP5支持模板主题(参照ThinkPHP3.2)
- 技术面试中,遇到不会回答的问题怎么破?来,教你几招!
- mysql字符集排序规则_MySQL原理 - 字符集与排序规则
- CS229——NODE1part2
- git clone 分支_Git 小团队的协作 (二)
- SecureCRT日志上添加时间戳
- 兼容多浏览器的CSS背景透明
- restTemplate请求,报 : No instances avaliable for ip地址
- 浅析类的const成员函数,类的const对象
- 2019.02.12 bzoj3944: Sum(杜教筛)
- EF+泛型修改方法(查询修改和不查询修改)
- 线性同余法生成随机数Matlab_生成安全的随机数
- 一维热传导方程求数值解
- 爬虫实战之selenium淘宝抢购订单
- Fluent Meshing的workflow方法
- MP3 文件格式解析
- C语言if( x)的意思,c语言中if(x)是什么意思?_后端开发
- UG NX 10 重新附着草图
- 店开天下,阿里云助力客如云数据中台建设
热门文章
- No connection could be made because the target machine actively refused it [::1]:808
- java离线日期授权解决方案 解决改系统日期 Java代码混淆 日期混淆
- ROS学习:cv_bridge与opencv版本冲突三种解决方案
- 2.1 - 操作系统的作用、分类
- 云计算的定义、云计算系统的架构组成、云计算的应用和云计算的问题
- NCBI查看基因注释信息
- [转]谨慎使用Encoding.Default
- 基于卷积神经网络的口罩佩戴识别与检测
- qt5的qk2dview
- 多媒体计算机在教学中的应用,浅析计算机多媒体在教学中的应用