最近在自学python,尝试一下它的爬虫功能。于是脑袋一热就像把网页上的推背图的图片都爬下来放一个文件夹里。于是就有了下面的代码。

注:本教程只做学习交流使用,下载的图片只是本地查看,未做他用,如有侵权,还请站长私信我,我会删除本篇博客。

1.找到需要爬取的网页

百度“推背图”,在搜索结果里有一个推背图图片的网站,果断点击。个人理解,所谓的爬虫,就是先找到目标网站的入口,然后根据规律爬取想要的内容。网页的网址如为:http://www.tuibt.com/

2.发现爬取内容的规律

点击每一个卦象的内容,发现地址是按顺序增长的,所以就好办了。

for num in range(1, 61):#请求网页pageTuibei = requests.get("http://www.tuibt.com/tuibeitu/" + str(num) + ".html", proxies=proxy_dict)

3.截取需要的内容

根据返回的页面数据,找到我们需要的内容,这里我需要一个图片的地址和图片名称,直接解析即可(因为逻辑简单,直接按字符串截取)

 #页面源码里的编码是gb2312,若不指定,中文会出现乱码pageTuibei.encoding = "gb2312"#获取页面的源码mainStr = pageTuibei.text#截取我们需要的信息的部分mainStr = mainStr[mainStr.find("<P align=center><IMG height="):]mainStr = mainStr[:mainStr.find("<BR>")]#截取出图片路径imgSource = mainStr[mainStr.find("\"")+1:mainStr.find("\" width")]#截取出图片名称imgName = mainStr[mainStr.find("alt=")+4:mainStr.find(" src")]

4.下载到本地

剩下的事就是将图片下载到本地了。直接将源码都附上吧,我用的是公司的网,所以要使用到代理,正常的网络是不需要配置的

import requests
proxy_dict = {"http": "http://*****:*****@proxy.*****.com:8080/","https": "http://*****:*****@proxy.*****.com:8080/"
}
#推背图共60张,所以循环60次
for num in range(1, 61):#请求网页pageTuibei = requests.get("http://www.tuibt.com/tuibeitu/" + str(num) + ".html", proxies=proxy_dict)#页面源码里的编码是gb2312,若不指定,中文会出现乱码pageTuibei.encoding = "gb2312"#获取页面的源码mainStr = pageTuibei.text#截取我们需要的信息的部分mainStr = mainStr[mainStr.find("<P align=center><IMG height="):]mainStr = mainStr[:mainStr.find("<BR>")]#截取出图片路径imgSource = mainStr[mainStr.find("\"")+1:mainStr.find("\" width")]#截取出图片名称imgName = mainStr[mainStr.find("alt=")+4:mainStr.find(" src")]# 读取图片imgByte = requests.get(imgSource,proxies=proxy_dict)# 将图片写入文件夹内with open("tbt/"+imgName+".jpg", "wb") as file:print("下载图片"+imgName)file.write(imgByte.content)

整个功能写完,算上注释都没到30行,我发现我有点喜欢上这个东西了。

5.发个效果图

python爬取推背图图片相关推荐

  1. 使用Python爬取网页图片

    使用Python爬取网页图片 李晓文 21 天前 近一段时间在学习如何使用Python进行网络爬虫,越来越觉得Python在处理爬虫问题是非常便捷的,那么接下来我就陆陆续续的将自己学习的爬虫知识分享给 ...

  2. 利用python爬取网页图片

    学习python爬取网页图片的时候,可以通过这个工具去批量下载你想要的图片 开始正题: 我从尤物网去爬取我喜欢的女神的写真照,我们这里主要用到的就两个模块 re和urllib模块,有的时候可能会用到t ...

  3. python爬取美女图片的练习

    python 爬取美女图片的练习 主要使用 xpath 定位获取 图片的链接 本次练习使用到os库 ,lmxl库 , requests库 import requests from lxml impor ...

  4. Python爬取bing图片

    我之前写过一篇Python爬取百度图片,有兴趣的朋友可以去读一下,这次写的是爬取Bing的图片. 打开Bing图片,搜索关键词,开始分析页面,可以发现bing和百度一样都是下滑自动加载,百度默认一次加 ...

  5. python爬取搜狗图片

    python爬取搜狗图片 cond(`""" 对于动态加载的网站图片的获取,我们需要去分析js内容一定要让网页发生加载后去分析,分析network 里的XHR,可以看到需 ...

  6. Python爬取网站图片并保存,超级简单

    Python爬取网站图片并保存,超级简单 先看看结果吧,去bilibili上拿到的图片=-= 第一步,导入模块 import requests from bs4 import BeautifulSou ...

  7. Python爬取网页图片至本地

    Python爬取网页图片至本地 爬取网页上的图片至本地 参考代码如下: # -*- codeing = utf-8 -*- import requests import rephotos = [] h ...

  8. Python爬取网站图片数据

    Python爬取网站图片数据 找到需要爬取的网站地址 模拟网站http请求 根据调试模式获取的了解读取到真实的地址url,读取请求头数据和参数信息,模拟http请求调用 import requests ...

  9. 如何使用python爬取百度图片_python实现爬取百度图片的方法示例

    本文实例讲述了python实现爬取百度图片的方法.分享给大家供大家参考,具体如下: import json import itertools import urllib import requests ...

最新文章

  1. C++内存管理学习堆和栈
  2. 论文翻译_做论文翻译需要知道哪些翻译技巧?知行翻译:这3个技巧
  3. 什么是xmlschema
  4. C语言文件操作函数大全(看到总结的真的很好,就转载贡献给大家了)
  5. javamail课设_JAVA MAIL实例讲解教程视频下载(16课程)
  6. 好记性不如烂笔杆-android学习笔记十一 Service的应用
  7. 《转》 在C++中使用TinyXML2解析xml
  8. java单一窗体设计模式,JAVA中设计模式之 -- 单例模式
  9. 华强北耳机检测软件_华强北神器不灵了?肢解500块最强山寨AirPods Pro:虚假降噪背后骗术翻车...
  10. ++递归 字符串全排列_一文看懂全排列算法
  11. 在苹果系统MacOS上安装PowerDesigner16.5
  12. Windows 安装 labelimg 图片标注工具
  13. 自媒体短视频采集工具,采集多个平台的视频
  14. POJ 3684 Physics Experiment(弹性碰撞)
  15. 【MATLAB】GA优化算法整定PID控制器参数(三)—— 一阶带时延的被控对象
  16. 使用Best Trace工具查看VPS的去程和回程线路的路由
  17. Matlab 图片批量复制到word中
  18. 同事辞职了,我一个人做两个人的活,公司又不招人了,该怎么办?
  19. 2021年,你读了哪些不错的C++书籍?
  20. QPushButton QTableWidget QComBox属性设置

热门文章

  1. org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.xxxx.phb.mappe
  2. 初会考试怎么用计算机,初级无纸化考试计算器太难用怎么办?你可以这样做!...
  3. E40-80安装10.14.5 Mojave方式
  4. 算法小讲堂之平衡二叉树|AVL树(超详细~)
  5. 设计个性的windows鼠标样式
  6. CSS 背景人物虚化+字体不虚化
  7. Linux下wineQQ国际版安装方法
  8. 亚马逊云科技依托人工智能进行游戏数据分析,解决游戏行业痛点,助力游戏增长
  9. 字节跳动技术总监自爆:为什么大公司一定要使用微服务?你还看不懂吗?
  10. AD9361 FIR 滤波器设计