首页 > 编程语言 >10个高效的Python爬虫框架

10个高效的Python爬虫框架

时间:2024-09-27 15:50:18浏览次数:8  
标签:10 浏览器 框架 Python 爬虫 文档 https


前言
小型爬虫需求,requests库+bs4库就能解决;大型爬虫数据,尤其涉及异步抓取、内容管理及后续扩展等功能时,就需要用到爬虫框架了。

下面介绍了10个爬虫框架,大家可以学习使用!

  1. Scrapy scrapy

官网:https://scrapy.org/

scrapy中文文档:https://www.osgeo.cn/scrapy/intro/o

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。

其最初是为了 页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以应用在获取API所返回的数据(例如 Amazon Associates Web Services ) 或者通用的网络爬虫。

Scrapy框架是一套比较成熟的Python爬虫框架,可以高效的爬取web页面并提取出结构化数据,用这个框架可以轻松爬下来如亚马逊商品信息之类的数据。

  1. PySpider

PySpider 中文网:http://www.pyspider.cn

PySpider 官网:http://docs.pyspider.org

PySpider 演示:http://demo.pyspider.org

PySpider 源码:https://github.com/binux/pyspider

PySpider是一个国人编写的强大的网络爬虫系统并带有强大的WebUI,其用python实现的功能强大的网络爬虫系统,能在浏览器界面上进行脚本的编写,功能的调度和爬取结果的实时查看,后端使用常用的数据库进行爬取结果的存储,还能定时设置任务与任务优先级等。

pyspider 是一个用python实现的功能强大的网络爬虫系统,能在浏览器界面上进行脚本的编写,功能的调度和爬取结果的实时查看,后端使用常用的数据库进行爬取结果的存储,还能定时设置任务与任务优先级等。

  1. Crawley

Crawley可以高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为JSON、XML等。

  1. Portia

官网:https://portia.scrapinghub.com/

Portia是一个开源可视化爬虫工具,可让您在不需要任何编程知识的情况下爬取网站!简单地注释您感兴趣的页面,Portia将创建一个蜘蛛来从类似的页面提取数据。其主要特征是: Portia是一款不需要任何编程知识就能爬取网页的爬虫框架,只要将相关信息填好之后,就可以爬取网站了。 基于 scrapy 内核

可视化爬取内容,不需要任何开发专业知识

动态匹配相同模板的内容

​5. Newspaper

官方文档:Quickstart - newspaper 0.0.2 documentation

github地址:https://github.com/codelucas/newspaper

Newspaper可以用来提取新闻、文章和内容分析。使用多线程,支持10多种语言等。作者从requests库的简洁与强大得到灵感,使用python开发的可用于提取文章内容的程序。支持10多种语言并且所有的都是unicode编码。   Newspaper框架是一个用来提取新闻、文章以及内容分析的Python爬虫框架。

  1. Beautiful Soup

官方文档:Beautiful Soup 4.4.0 文档

Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间。这个我是使用的特别频繁的。在获取html元素,都是bs4完成的。

Beautiful Soup整合了一些常用的爬虫需求,可以从HTML或XML文件中提取数据的Python库。它能够通过你喜欢的转换器实现惯用的文档导航、查找、修改文档的方式,会帮你节省数小时甚至数天的工作时间。

  1. Grab

官网:https://grablib.org/en/latest/

Grab是一个用于构建Web刮板的Python框架。借助Grab,您可以构建各种复杂的网页抓取工具,从简单的5行脚本到处理数百万个网页的复杂异步网站抓取工具。  Grab提供一个API用于执行网络请求和处理接收到的内容,例如与HTML文档的DOM树进行交互。

Grab可以构建各种复杂的网页抓取工具,从简单的5行脚本到处理数百万个网页的复杂异步网站抓取工具。

  1. Cola

github地址:https://github.com/qinxuye/cola

Cola是一个分布式的爬虫框架,对于用户来说,只需编写几个特定的函数,而无需关注分布式运行的细节。任务会自动分配到多台机器上,整个过程对用户是透明的。

  1. Selenium

官网:https://www.selenium.dev/

Selenium 是自动化测试工具。它支持各种浏览器,包括 Chrome,Safari,Firefox 等主流界面式浏览器,如果在这些浏览器里面安装一个 Selenium 的插件,可以方便地实现Web界面的测试. Selenium 支持浏览器驱动。

Selenium支持多种语言开发,比如 Java,C,Ruby等等,PhantomJS 用来渲染解析JS,Selenium 用来驱动以及与 Python 的对接,Python 进行后期的处理。

它支持各种主流界面式浏览器,如果在这些浏览器里面安装一个 Selenium 的插件,可以方便地实现Web界面的测试。

  1. Python-goose

github地址:https://github.com/goose3/goose

Python-goose框架可提取包括文章内容、文章图片、文章中嵌入的任何视频、元描述、元标签。

标签:10,浏览器,框架,Python,爬虫,文档,https
From: https://www.cnblogs.com/Michelle0916/p/18435930

相关文章

  • P10603 BZOJ4372 烁烁的游戏 题解
    题目传送门前置知识动态树分治|动态开点线段树|标记永久化解法考虑动态点分治。两种操作本质上是将luoguP6329【模板】点分树|震波的操作互换了下,将原需支持单点修改、区间查询的数据结构换成需支持区间修改、单点查询的数据结构即可。区间修改、单点查询的动态开......
  • 将Python文件编译为exe可执行程序
      Python程序py格式文件的优点是可以跨平台,但运行必须有Python环境,没有Python环境无法运行py格式文件。有没有方法,用户不同安装Python就可直接运行开发的项目工程?答案是肯定的。这就涉及到需要将Python的.py格式文件编写的脚本编译成一个系统可执行文件,这可用PyInstaller来实......
  • 人人都能手写的chrome插件,帮我省了1000多块钱
    在网购的世界里,价格波动常常让人感到无奈。《京东价保》插件通过定时监控已购商品价格变化,降价自动申请京东价格保护,帮我省下了不少钱。作为一个前端开发工程师,这让我意识到,手写一个浏览器插件是一件很有趣且有意义的事。于是,我决定尝试自己动手,开发一个简单的二维码生成器插件,各位......
  • Python自动整理文件夹
    编写一个Python脚本来遍历指定目录下的所有文件,根据文件的扩展名来创建相应的子文件夹(如果尚不存在的话),然后将文件移动到对应的子文件夹中。同时,我们需要处理重名文件的问题,通过在文件名后添加_和数字来区分。下面是一个实现这个功能的Python脚本示例:importosimportshu......
  • 数据结构编程实践20讲(Python版)—02链表
    本文目录02链表linked-listS1说明S2示例单向链表双向链表循环链表S3问题:反转单向链表求解思路Python3程序S4问题:双向链表实现历史浏览网页求解思路Python3程序S5问题:基于循环链表的玩家出牌顺序求解思路Python3程序往期链接01数组02链表linked-lis......
  • 【21 ZR联赛集训 day10】身经百战
    【21ZR联赛集训day10】身经百战显然每个怪物是独立的。我们考虑对操作建带权边,答案就是求最短路。但是点数太多,于是我们可以对怪物血量和所有\(a_i,b_i\)离散化一下,因为我们只需要考虑这些点,注意\(1\)也要离散化,因为我们需要考虑\(1\)。一个小优化,如果\(a_i>b_i\)且......
  • 【21 ZR联赛集训 day10】不知道高到哪里去了
    【21ZR联赛集训day10】不知道高到哪里去了二分答案。设敌人的速度是\(1\),二分我的速度\(v\),我可以从\(C\)走到\(T\)当对于每个我到达的点\(u\),敌人无法比我先到达,即敌人到达\(u\)最短用时比我大。先求敌人到每个结点的最短路,然后对于二分的一个\(v\),从\(C\)开始搜......
  • 2024年10月CISAW课程安排
    信息安全保障人员(CISAW)各方向的第一阶段和第二阶段培训本月将以线上+线下模式开展CISAW根据专业领域分为多个类别,如安全集成、安全运维、风险评估、应急服务、软件安全开发等,通过培训后可获得全国通用的信息安全保障人员认证证书。CCRC-DSO数据安全官,CCRC-DSA数据安全评估......
  • 【21 ZR联赛集训 day10】跑得比谁都快
    【21ZR联赛集训day10】跑得比谁都快\(O(nq)\)做法显然,不讲。如果我们把所有红绿灯的位置\(mod(g+r)\),放到数据结构里,就可以\(O(\logn)\)的时间内找到第一个红灯的位置。然后我们预处理每个红绿灯红灯结束的时刻开始,走到终点要用的时间\(f_i\),DP倒序求解。对于每个询......
  • 110反诈报案中心?
    一旦发现自己被骗,打开百度"搜索官方网站"进行网上报案,[报案官网wwt12450.cn]如实描述当时被骗的过程,进行报案挽回您的损失。 并不存在“1110反诈报案中心”。 在我国,常见的反诈报案途径主要有以下几种: 1. 拨打110:这是最通用、最直接的报案方式。当发现自己遭遇......