python小爬虫
来源:互联网 发布:万字酱油 知乎 编辑:程序博客网 时间:2024/05/21 21:38
今天学习了一个小爬虫,现在来总结一下。
目的:
获取某个网页上的图片
思路:
1.获取该网页的内容
2.在网页的内容中筛选出我们想要的东西
3.进行相对应的操作,例如下载。
实际操作:
1.获取某个网页的内容
import urllib
def getHtml(url)
page = urllib.urlopen(url)
html = page.read()
return html
print getHtml("http://tieba.baidu.com/p/4044308132")
创建一个函数getHtml(url),用于获取网页内容。用urllib.urlopen获取这个文件,url表示路径。并将其赋予给page。
page.read()表示读取这个文件的内容,然后我们再将文件的内容赋予给html。再return html的值
用下图网页作为实验对象。
在对上述的代码进行运行后,我们会获得下方的结果
这就是通过上述代码获得的网页内容。
2.对网页内容进行筛选。
我们是要获取网页中的图片,以jpg图片为例。
import reimport urllibdef getHtml(url): page = urllib.urlopen(url) html = page.read() return htmldef getSrc(html): reImg=r'src="(.+?\.jpg)" pic_ext' imgList=re.findall(reImg,html) return imgList html=getHtml("http://tieba.baidu.com/p/4044308132")print getSrc(html)
因为我们要筛选获取网页中的jpg图片,所以我们要用到正则表达式,所以要导入re库。从上述图片我们发现网页中图片路径的格式为src=“http://...@¥%……#¥.jpg” pic_ext
所以写出我们的正则表达式。然后进行应用,将得到的内容赋予imgList 并进行返回,然后再输出getSrc。
得到下图的内容:
3.接下来进行相应的操作,例如下载
import reimport urllibdef getHtml(url): page = urllib.urlopen(url) html = page.read() return htmldef getSrc(html): reImg=r'src="(.+?\.jpg)" pic_ext' imgList=re.findall(reImg,html) x=0 for img in imgList: urllib.urlretrieve(img,"%szczc.jpg" % x) x+=1html=getHtml("http://tieba.baidu.com/p/4044308132")getSrc(html)
通过for循环,使用urllib.urlretrieve()对该网页的每一张jpg图片进行下载。urlretrieve()有两个参数,一个是路径,一个是存储的文件名,这里的话通过for循环,使每次保存的文件名不同,以免覆盖,导致后来下载的文件将之前的文件进行覆盖。
最后下载的文件在该python文件的相同目录下:
阅读全文
0 0
- [python]网页小爬虫
- 一个Python小爬虫
- python爬虫小程序
- python图片小爬虫
- Python小爬虫,(多线程)
- python小爬虫
- python爬虫小实例
- python小爬虫
- python小爬虫-糗百
- python爬虫小试
- python 图片小爬虫
- python requests 小爬虫
- 一个python小爬虫
- python小爬虫
- Python小爬虫小总
- 第一只python小爬虫
- 一个python爬虫小程序
- python爬虫小笔记/干货
- abstract抽象类和abstract抽象方法
- 比特位操作——二进制中有多少个1
- AT指令(中文详解版)
- Javascript之面向对象
- [Python学习]解释器Interpreter
- python小爬虫
- OJ.2316: 排序【数组】
- 剑指offer | 训练题43:翻转单词顺序列
- WIFI 扫描和连接热点
- 02_ARM汇编自学笔记模型之ARM微处理器的工作状态
- JSP的内置对象
- Servlet
- 在Spring中JdbcTemplate中使用RowMapper
- C# WinForm开发系列之chart控件画折线图和柱形图并自定义鼠标移动到数据标记点显示提示信息