爬虫进阶库:Scrapeasy
1、 引言
小屌丝:鱼哥, 我最近在练习写爬虫, 你有没有什么便捷的方式…
小鱼:比如呢?
小屌丝:比如,一句话就可以搞得定爬取整个网站。
小鱼:我不是写过挺多的爬虫案例嘛,你咋还问这个问题,
小屌丝:你写的哪些教程,像我这种比较懒散的人,不适用!
小鱼:我擦~ ~ 你这…
小屌丝:鱼哥,你就像这篇《只用1行代码就下载全网视频》,就一行代码, 我保证妥妥的会。
小鱼:Let me 想一下。
2、Scrapeasy
按照小屌丝的想法, 我想到了一个库:Scrapeasy
小屌丝:这是不是第三方库。
小鱼:必须的,python自带库,能有这么强大的功能吗?
2.1 简介
2.1.1 Scrap
关于Scrapeasy 大家可能了解的不多,
但是 Scrap 爬虫大佬肯定了解。
那什么是Scrap呢?
Scrapy
Scrapy是一个功能强大的网络爬虫类库,通过命令pip install scrapy进行安装,爬取的海量数据可以通过MongoDB进行存储。
我上一个架构图:
关于Scrap的其他功能,
可以移步 Scrap官网进行阅读,这里不做过多介绍。
2.1.2 Scrapeasy
我们再来了解 Scrapeasy。
Scrapeay 是Python的一个第三方库,主要功能:
- 可以抓取网页数据;
- 从单网页提取数据;
- 多网页提取数据;
- 可以从PDF和HTML表格中提取数据;
听着是很牛的样子,
接下来,我们就去代码中实践,看看到底有多牛。
2.2 安装
涉及到第三方库,肯定就需要安装
老规矩,pip 安装
pip install scrapeasy
其它安装方式,直接看这两篇:
2.3 代码示例
代码示例
# -*- coding:utf-8 -*-
# @Time : 2022-10-31
# @Author : Carl_DJ
'''
实现功能:
通过scrapeasy 来实现爬取数据
'''
from scrapeasy import Website,Page
#创建网站对象
#这里我就以我博客的地址为例子
webs = Website("https://blog.csdn.net/wuyoudeyuer?type=blog")
#获取所有子链接
urls = webs.getSubpagesLinks()
#输出信息
print(f'打印所有链接信息:{urls}')
#查找图片
images = webs.getImages()
print(f'打印所有的图片信息:{images}')
#下载图片
webs.download('img','./data')
#下载pdf
webs.download('pdf','./data')
#获取链接
main_urls = webs.getLinks(intern=False,extern=False,domain=True)
#获取链接域
domain = webs.getLinks(intern=False,extern=True,domain=False)
# 下载其他类型的文件
cal_urls = webs.get("php")
解析
- 下载所有链接: getSubpagesLinks() 方法;
- 查找图片:getImages()方法;
- 下载:webs.download()方法;
- 下载其他格式文件:get(“文件类型”);
3、总结
看到这里,今天的分享差不多就该结束了。
今天主要是针对scrapeasy这个库进行简单的分享。
学会scrapeasy,你算是迈入的爬虫的 门槛。
其实关于爬虫,我也写过一些教程和案例,例如:
- 《Python3:我只用1行代码就下载全网视频,我被我的才华和颜值征服了!!》
- 《Python3,20行代码,通过微信电脑版爬取朋友圈数据,老板再也抓不到我上班看手机了!!!》
- 《Python3,多线程爬完B站UP主的视频弹幕及评论,我飘了~ ~ ~》
- 《Pyhotn3,爬取B站up主的信息!》
这里就不过多列举了,更多的示例,可以看小鱼的爬虫实战专栏的。
我是小鱼:
关注我,带你学习Python领域更多更专业的技能。