您的位置: 首页 > 新闻资讯 > 正文

实战案例:爬虫抓取网页数据

发布时间:2019-02-19 11:30:13 来源:互联网

我们经常会收集一些资料,但资料比较少的时候,大家会习惯性自己手动下载,但如果数量非常多,肯定是想找个工具来帮忙收集的。

比如说,使用一些采集的工具,但是由于这些工具都是设定好的,并不是很符合我们的需求,如果要求低些,就将就着用了。如果要求高的,还不如自己做个爬虫,想抓取什么资料就抓取哪些。

关键是要看你会不会写爬虫呢?其实非常简单的,小编这就为大家分享下爬虫抓取网页数据案例

1.获取网页信息

实战案例:爬虫抓取网页数据

Urllib 模块提供了读取web页面数据的接口,我们可以像读取本地文件一样读取www和ftp上的数据。首先,我们定义了一个getHtml()函数:

urllib.urlopen()方法用于打开一个URL地址。

read()方法用于读取URL上的数据,向getHtml()函数传递一个网址,并把整个页面下载下来。执行程序就会把整个网页打印输出。

2.筛选页面数据

Python提供了非常强大的正则表达式,我们需要先要了解一点python正则表达式的知识才行。

假如我们百度贴吧找到了几张漂亮的壁纸,通过到前段查看工具。找到了图片的地址,如:src=”http://imgsrc.baidu.com/forum......jpg”pic_ext=”jpeg”

实战案例:爬虫抓取网页数据

修改代码如下:

实战案例:爬虫抓取网页数据

我们又创建了getImg()函数,用于在获取的整个页面中筛选需要的图片连接。re模块主要包含了正则表达式:

re.compile() 可以把正则表达式编译成一个正则表达式对象。

re.findall() 方法读取html 中包含 imgre(正则表达式)的数据。

运行脚本将得到整个页面中包含图片的URL地址。

3.数据保存

把筛选的图片地址通过for循环遍历并保存到本地,代码如下:

实战案例:爬虫抓取网页数据

这里的核心是用到了urllib.urlretrieve()方法,直接将远程数据下载到本地。

通过一个for循环对获取的图片连接进行遍历,为了使图片的文件名看上去更规范,对其进行重命名,命名规则通过x变量加1。保存的位置默认为程序的存放目录。程序运行完成,将在目录下看到下载到本地的文件。

以上就是爬虫抓取网页数据案例分享,如今大数据时代,数据非常多,要收集到足够多的数据进行分析,得到得结果才有价值。在爬虫抓取数据中,大家记得要使用代理IP,这样可以让爬虫高效得爬取数据,更短时间出结果。找代理IP,黑洞代理非常不错,不光能使用到全国IP地址,而且还是高匿名的,效果更好。


相关文章内容简介

1 实战案例:爬虫抓取网页数据

我们经常会收集一些资料,但资料比较少的时候,大家会习惯性自己手动下载,但如果数量非常多,肯定是想找个工具来帮忙收集的。比如说,使用一些采集的工具,但是由于这些工具都是设定好的,并不是很符合我们的需求,如果要求低些,就将就着用了。如果要求高的,还不如自己做个爬虫,想抓取什么资料就抓取哪些。关键是要看你会不会写爬虫呢?... [阅读全文]

最新标签