背景说明

爬取煎蛋网中随手拍栏目中的某页的所有图片

实战

分析

  1. 先打开煎蛋网站中的“随手拍”,链接为:http://jandan.net/ooxx/MjAyMDA1MTctMTc1#comments
  2. 按F12打开开发者工具,然后在图片上点击“检查”,可看到图片的链接
  3. 找到这些图片的链接,然后保存即可

代码实现

  1. download_images方法创建保存图片的文件夹,再调用find_images找到图片的地址,再用save_imgs方法来保存图片
  2. url_open方法说明:很多地方都要从链接请求html文件,所以封装了
  3. find_images方法说明:在html文件中查找图片链接地址

代码示例如下:

import urllib.request
import osdef url_open(url):req = urllib.request.Request(url)req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36')response = urllib.request.urlopen(req)html = response.read()return htmldef find_images(url):html = url_open(url).decode('utf-8')img_addrs = []a = html.find('img src=')print('a:'+str(a))while a != -1:b = html.find('.jpg',a,a+255)print('b:'+str(b))if b != -1:img_addrs.append(html[a+9:b+4])else:b = a + 9a = html.find('img src=',b)for each in img_addrs:print(each)return img_addrsdef save_imgs(folder,img_addrs):for each in img_addrs:print('save_imgs_each:'+each)filename = each.split('/')[-1]with open(filename,'wb') as f:img = url_open('http:'+each)f.write(img)def download_images(url):print(url)folder='images'os.mkdir(folder)os.chdir(folder)page_num = int(get_page(url))img_addrs = find_images(url)save_imgs(folder,img_addrs)if __name__ == '__main__':url = 'http://jandan.net/ooxx/MjAyMDA1MTctMTc1#comments'download_images(url)

github上的代码

python学习笔记之模块爬虫实战-爬取网站图片(十四)相关推荐

  1. C++编写爬虫脚本爬取网站图片

    C++编写爬虫脚本爬取网站图片 整体代码设计思路 具体功能实现 初始化网络库 url中爬取图片 获取网页源代码 连接主机 url中获取主机名和文件名 html中提取连接 html中提取图片链接 获取并 ...

  2. Python爬虫(1)------爬取网站图片

    初学爬虫的学习流程 环境 python 3.6 使用 urlib库进行爬取内容 熟悉爬虫 首先对百度进行爬取 # -*- coding: utf-8 -*- import urllib.request ...

  3. 爬虫实战-爬取wallhaven图片(小白入门)

    (最近学业课程较为紧张,码代码的时间比较紧,利用零散时间终于做完了此次爬取) 作为爬虫小白,代码偏向简单,大佬勿喷~ 本次爬取网站:https://wallhaven.cc/toplist 本次所用工 ...

  4. python爬虫爬取图片代码_python爬虫实战 爬取天极图片

    学习爬虫个人的意见是直接实战效果会很好 不要等全学完requests ,正则表达式,BeautifulSoup等再来实际操作.其实很多实战我们并不会用到requests库,BeautifulSoup, ...

  5. python爬虫实战---爬取大众点评评论

    python爬虫实战-爬取大众点评评论(加密字体) 1.首先打开一个店铺找到评论 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很多 ...

  6. python爬虫实战-爬取微信公众号所有历史文章 - (00) 概述

    http://efonfighting.imwork.net 欢迎关注微信公众号"一番码客"获取免费下载服务与源码,并及时接收最新文章推送. 最近几年随着人工智能和大数据的兴起,p ...

  7. Python学习笔记:第三方模块2

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  8. Python爬虫实战爬取租房网站2w+数据-链家上海区域信息(超详细)

    Python爬虫实战爬取租房网站-链家上海区域信息(过程超详细) 内容可能有点啰嗦 大佬们请见谅 后面会贴代码 带火们有需求的话就用吧 正好这几天做的实验报告就直接拿过来了,我想后面应该会有人用的到吧 ...

  9. python爬虫实战-爬取视频网站下载视频至本地(selenium)

    #python爬虫实战-爬取视频网站下载视频至本地(selenium) import requests from lxml import etree import json from selenium ...

最新文章

  1. pycharm的安装配置和简单使用
  2. 连接linux软件发复制文件过去,linux基本文件操作
  3. 【详解】CSS阴影用法——Web前端系列学习笔记
  4. window.atob()与window.btoa()方法实现编码与解码
  5. php怎样加速,php 提速
  6. 第八篇:Spring Boot整合Thymeleaf_入门试炼04
  7. Mysql的远程连接
  8. UE4之插件打包提示安装vs2017
  9. 个股打板机会:国民技术(实战)
  10. 利用清华镜像、阿里云镜像与豆瓣镜像pip资源
  11. java分页 添加序号_java 分页
  12. 计算机一级移动是复制粘贴吗,学会着几种复制粘贴的方法你做事会事半功倍
  13. linux1t文件误删,linux – 复制1TB稀疏文件
  14. 【移动安全基础篇】——26、两个简单app破解
  15. ATtiny85单片机制作PCB小提琴
  16. 水平放滑轮组计算机械效率,滑轮组机械效率     王凤霞
  17. 实验8.1 时间换算
  18. hive concat_ws列转行排序问题
  19. excel表格修改时间/时间加减
  20. 解决win7设置默认程序打开方式失效

热门文章

  1. 74194/74LS194 四位移位寄存器
  2. 我的U盘是金士顿4G的打不开,windows无法格式化
  3. git合并两个没有共同历史提交记录的分支:fatal: refusing to merge unrelated histories
  4. Python 绘制 3 维以上的高维图!
  5. 修改elementUI轮播图鼠标划入轮播暂停的原生效果
  6. 使用CNN,RNN和HAN 进行文本分类
  7. Quest 3d q.LoadChannelGroup的用法详解
  8. 多平台大型文件系统比较
  9. 深入理解Java虚拟机——类加载的时机
  10. WebBrower打开Office2007文件