转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7019950.html 

一:流程

目标:爬取目标网页的图片

1:获取网页源码

2:用Python读取源码

3:使用正则表达式从网页源码提取图片地址

4:根据图片地址下载图片

二:实现

1:源码获取

文本爬虫,是在已有的文本内容中爬取需要的信息,这区别于网络爬虫。

由于被检索的内容是现成的,因此,文本爬虫又叫“半自动爬虫”。

在本例中,我们以昵图网首页为目标网址,因此,我们先到昵图网首页,右键—>查看源代码—>保存源码到txt文件。

2:编写代码

#coding:utf8
import re
import requests #1:读取文本文件,存到一个变量中
f=open("src.txt","r+")
htmls=f.read()
f.close() #2:使用正则表达式,从独取出来的文本内容中进行提取
img_url=re.findall('<img src="(.*?)"',htmls,re.S) #3:遍历正则表达式的匹配结果,使用requests模块功能连接图片并通过文件写操作把图片保存下来
i=1;
for each in img_url:
#连接到图片
img=requests.get(each)
#创建图片文件
fp=open('img'+str(i)+'.jpg',"wb")
#把链接到的图片内容写入文件
fp.write(img.content)
#关闭文件
fp.close()
i=i+1

最新文章

  1. combox
  2. js,java,浮点数运算错误及应对方法
  3. sql 获取一批指定范围且不重复的随机数
  4. Javascript 事件对象(五)事件捕获
  5. sphinx索引文件进一步说明——最好是结合lucene一起看,直觉告诉我二者本质无异
  6. IOS 杂笔-4(属性与成员变量的区别)
  7. C# WinForm开发系列 - ListBox/ListView/Panel
  8. systemd service
  9. The Swift Programming Language-官方教程精译Swift(3)基本运算符
  10. c# 去除文本的html标签
  11. hadoop编译
  12. 解读 Vue 之 Reactive
  13. [LeetCode] Maximum Length of Repeated Subarray 最长的重复子数组
  14. MTK-TP(电阻屏校准程序ts_lib移植)
  15. SSH框架学习------struts2(一)
  16. 最全,可直接用的一些正则校验,判断邮箱,手机号码,车牌号,身份证号,网址,账号,密码,ip,去掉html格式,工商税号等。
  17. Arduino IDE for ESP8266 项目云盒子(2)一键自配置+网页服务器
  18. php CURL 发送get,post请求
  19. 手动安装python库
  20. springMVC集成CXF后调用已知的wsdl接口

热门文章

  1. Mybatis ResultMap Collection 复合主键
  2. [Web 前端 ] 还在用浮动吗?CSS flex布局你了解多少?
  3. 解读SSD中的Default box(Prior Box)
  4. protobuf 嵌套示例
  5. DP思路
  6. Qt实现自定义按钮的三态效果
  7. 奇怪吸引子---DequanLi
  8. OpenWRT - WEB界面开发思路和基本方法
  9. [转载][HASS.IO] 【HASSOS安装】成功安装HASSOS 1.9(避开了大部分坑版)
  10. GIST特征描述符使用