Python开发框架是一组用于简化和加速Python应用程序开发的库和工具。它们提供了一系列预定义的功能和结构,以便开发者能够快速构建、测试和维护应用程序。
总结Python的开发框架,包括:Web框架、爬虫框架、定时任务框架、自动化测试框架、以及其他常用的框架。最新更新,请查看本文GitHub地址
Web框架是一种软件架构,提供了开发Web应用程序的基础结构和功能,帮助开发人员实现将应用程序部署到Web服务器上的简化。
使用 Web 框架,很多的业务逻辑外的功能不需要自己再去完善,而是使用框架已有的功能就可以。Web 框架使得在进行
网站开发的时候,减少了工作量。使用Web框架进行网站开发的时候,在进行数据缓存、数据库访问、数据安全校验等方面,不需要自己再重新实现,而是将业务逻辑相关的代码写入框架就可以。
提供模板引擎:模板引擎是将动态显示的数据与HTML模板结合起来的一种工具。Web框架可以提供多种模板引擎,以方便开发人员选择。
处理HTTP请求和响应:Web框架提供HTTP请求和响应的处理机制,包括路由分发、请求参数获取、静态文件处理等。
数据库支持:Web框架可以与数据库集成,提供ORM(Object-Relational Mapping)技术,简化数据库操作。
用户权限管理:Web框架可以提供用户认证及授权管理功能,确保Web应用程序安全性。
开发速度提升:通过提供常用组件和一些便捷的工具,Web框架帮助开发人员提高开发效率,减少开发时间。
优点:
缺点:
优点:Asgineer是一种编写异步Web应用程序的工具,使用尽可能少的抽象,同时仍然提供友好的API。只需几分钟即可阅读指南和参考资料!在Uvicorn上运行Asgineer时,它是可用的最快的Web框架之一。它支持http长轮询、服务器端事件(
SSE)和websockets。并且具有以正确(且快速)的方式为资产提供服务的实用程序。
缺点:中文文档匮乏。
优点:reahl 是一个可以让开发者完全用 Python 语言编写 Web 应用的开放框架,采用 Python 作为唯一开发语言是其最大特色。此外,reahl 提供了相当清晰且简明的开发组建,对于开发一般功能性 Web
系统足够清晰且可行。
缺点:提供抽象词汇时,无法掌握一些更高级的用户界面效果,目前不允许使用 Sass 构建 Bootstrap 的修改版本,并支持更高级的用户界面模式
Quart
是一个基于ASGI标准的Web框架,具有异步I/O和高性能,适用于构建高性能Web服务。
# type: ignore
Scrapy
是Python的一个开源网络爬虫框架,用于抓取互联网上的数据,提取结构性数据而编写的应用框架。
PySpider
是Python的一个开源功能强大的网络爬虫框架,可轻松编写爬取逻辑,支持分布式爬取,同时提供了web界面管理工具。能在浏览器界面上进行脚本的编写。
Crawley
Portia
是Scrapy的一个可视化爬虫工具,通过简单地拖拽和点击,即可完成HTML页面模板和数据解析规则的创建,不需要任何编程知识。
Beautiful Soup
是Python的一个开源库,用于解析HTML/XML等结构化的文本数据,广泛应用于Web爬虫和数据抓取应用中。
Requests
是Python的一个HTTP库,用于向Web服务器发送HTTP请求并获取响应。
Selenium
是Python的一个开源自动化测试工具,可用于模拟用户在浏览器上的操作并生成脚本,如点击、输入等,同时支持多种浏览器。
PyQuery
是Python的一个解析HTML/XML的库,提供了类似jQuery的语法,可快速定位、解析和操作HTML/XML文档,并从中提取数据。
Pyspide
是Python的一个分布式网络爬虫框架,使用WebSocket进行通信,支持JavaScript渲染页面,同时提供web界面管理工具。
urllib
是Python的一个标准库,包含了发送HTTP请求、处理HTTP响应等功能。
用于在Web浏览器和服务器之间共享数据。
MechanicalSoup
是Python的一个库,用于模拟网页的交互操作,自动提交表单、点击按钮等。
自动化Web浏览器和交互式Web程序。它构建在Beautiful Soup之上,提供了自动填充表单和点击按钮等功能。
lxml
是Python的一个开源库,可用于解析HTML/XML等结构化的文本数据,性能较Beautiful Soup更快,支持XPath表达式。
它可以解析大量数据,并支持XPath和CSS选择器来查找和提取数据。
Grab
是Python的一个开源网络爬虫框架,提供了类似jQuery的语法,支持多线程和分布式爬取,同时支持cookie、代理等功能。
,可以支持HTTP和FTP协议,提供了强大的过滤和解析功能。
Celery是一个异步任务队列和调度程序,可用于执行定时任务和长时间运行的任务。它支持多种任务类型和调度器类型,易于扩展。
是一个开源的平台,它提供了一种轻松创建、调度和监控复杂数据管道(data
pipelines)的方法。它可以将不同的数据源、计算引擎和工具集成到一个有组织的工作流中,使数据在不同的系统之间流动。Airflow包括一个灵活的调度器,可以根据依赖关系安排任务的执行顺序,并自动重新运行失败的任务。在数据工程领域,Airflow已成为一种重要的工具,用于处理大量的数据处理和ETL任务。
APScheduler
APScheduler是一个轻量级的Python库,用于在特定的时间执行任务。它支持多种触发器和调度器类型,可以精确地控制任务的执行。
Schedule
Schedule是一个Python库,提供了一种简单的方式来安排和执行定期运行的任务。它可以使用类似cron的语法定义任务,支持多种任务类型。
CronTab
CronTab是一个Python库,用于读取和操作Unix系统的crontab文件。它支持创建、删除和更新定期运行的任务,可用于管理系统级别的定时任务。
Timeloop
Timeloop是一个轻量级的Python库,用于执行重复性的任务。它可以使用装饰器或上下文管理器来定义任务,支持秒级、分级和小时级的任务。
Huey
Huey是一个轻量级的Python库,用于执行异步和延迟任务。它可以与Redis或MongoDB等后端存储一起使用,并提供了可扩展的任务调度和队列管理。
参考:自动化测试框架
是一个用于 CPython 的脚本扩展库,它允许开发者以 Python 调用或编写 C/C++ 扩展模块。它提供了一个简单的 API,允许将 Python 对象和函数导出到 C/C++,以便于从 C/C++ 代码中进行调用。
pyscript 使得使用 C/C++ 实现高性能计算的 Python 应用程序变得更加容易,同时支持各种平台和编译器。
更多资料 · 微信公众号搜索【CTO Plus】关注后,获取更多,我们一起学习交流。
关于公众号的描述访问如下链接
关于Articulate“做一个知识和技术的搬运工。做一个终身学习的爱好者。做一个有深度和广度的技术圈。”一直以来都想把专业领域的技https://mp.weixin.qq.com/s/0yqGBPbOI6QxHqK17WxU8Q