想要快速完成一个Python项目,离不开这些开源库
链接:https://opensource.com/article/18/9/python-libraries-side-projects
在Python / Django世界中有一句话:我们为语言而来,为社区而留。对我们大多数人来说,这是事实,但让我们置身于Python世界的另一个原因是,我们很容易就有了一个想法,并且可以几个小时内让这个想法快速实现。
本文我们将深入研究我们喜欢使用的Python库:
1、要动态保存数据库中的数据:Dataset
python中非常好用的数据库管理工具dataset,当我们想要快速地收集数据并将其保存到数据库中,而不知道最终的数据库表是什么样子时,Dataset就是我们的首选库。Dataset有一个简单而强大的API,可以轻松地将数据放入其中,并在稍后对其进行排序。
Dataset构建在SQLAlchemy之上,因此扩展它不会让你感觉到陌生。使用Django的内置inspectdb管理命令将底层数据库模型轻松导入Django。这使得使用现有数据库变得非常轻松。(官方文档:http://dataset.readthedocs.io/en/latest/)
2、从网页中提取数据:Beautiful Soup
Beautiful Soup使从HTML页面中提取信息变得很容易。当我们需要将非结构化或松散结构的HTML转换为结构化数据时,它就是是我们的首选。它还非常适合处理XML数据,否则这些数据可能无法读取。(项目地址:https://github.com/icodeu/BeautifulSoup)
3、处理HTTP内容:Requests
Requests是一个 Python 的 HTTP 客户端库,可以说是处理HTTP内容的黄金标准库之一。每当我们需要使用HTML页面甚至API时,Requests就会出现。它也有很好的记录。(项目地址:https://github.com/requests/requests)
4、编写命令行:Click
Python中强大的命令行库,在我们需要编写本机Python脚本时,Click是我们最喜欢的用于编写命令行实用程序的库。这个API很简单,只需要记住一些模式就行,文档很好用,它使得查找高级特性变得很容易。(官网镜像地址:http://click.uoota.com/6/)
5、Python Slugify
众所周知,给事物命名是很困难的。Python Slugify是一个很有用的库,可以将标题或描述转换为唯一的(ish)标识符。如果你正在处理一个web项目,并且希望使用seo友好的url, Python Slugify将会给你极大的帮助。(项目地址:https://github.com/un33k/python-slugify)
6、Pluggy
Pluggy相对较新,但它也是向现有应用程序添加插件系统中最好和最简单的方法之一。(项目地址:https://github.com/pytest-dev/pluggy)
7、要将CSV文件转换为API:Datasette
Datasette是一个神奇的工具,可以轻松地将CSV文件转换为功能齐全的只读REST JSON api。Datasette有很多功能,包括图表和地理位置(用于创建交互式地图),通过容器或第三方web主机很容易部署。(项目地址:https://github.com/simonw/datasette)
8、处理环境变量:Envparse
如果因为不想在源代码中保存API键、数据库凭证或其他敏感信息而需要解析环境变量,那么envparse就是最好的选择之一。Envparse处理环境变量、ENV文件、变量类型,甚至前处理器和后处理器(例如你希望确保变量总是大写或小写)。(项目地址:https://github.com/rconradharris/envparse)
你最喜欢的库有在这个列表里面么?留言分享给大家。
想要快速完成一个Python项目,离不开这些开源库的更多相关文章
- springboot:快速构建一个springboot项目
前言: springboot作为springcloud的基础,springboot的热度一直很高,所以就有了这个springboot系列,花些时间来了解和学习为自己做技术储备,以备不时之需[手动滑稽] ...
- 快速建立一个Django项目
快速建立一个Django项目 版本说明 一定要先明确好使用的Python版本和所使用包的版本,避免耽误不要的时间 Python==3.6.4 Django==1.11.9 djangoresframe ...
- 如何使用IDEA快速创建一个springboot项目
如何使用IDEA快速创建一个springboot项目 https://jingyan.baidu.com/article/0964eca24fdd938284f53640.html
- 快速构建一个vue项目
首先介绍一下命令行构建一个vue项目步骤: 1.下载安装node.js(直接运行安装包根据步骤安装完),打开命令行输入:node -v ,出现版本号即安装成功. 2.命令行界面输入:cnpm inst ...
- GitHub Python项目推荐|瓦力Devops开源项目代码部署平台持续部署
GitHub Python项目推荐|walle - 瓦力 Devops开源项目代码部署平台 项目热度 标星(star):8418 (很不错的实用项目,大神作品,建议关注) 标星趋势 关注(watch) ...
- Jupyter 快速入门——写python项目博客非常有用!!!
from:https://blog.csdn.net/m0_37338590/article/details/78862488 一.简介: Jupyter Notebook(此前被称为 IPython ...
- 快速搭建一个Vue-cli项目(简单到爆炸)
引言: 2013-2020年,这7年是web前端技术的一个高速发展期,也是前端开发岗位的考验期. 在我接触前端时,JQuery十分热门,开发者从原生JS到JQ的应用,可以说是大大提高了开发效率,也被广 ...
- vuejsLearn---通过手脚架快速搭建一个vuejs项目
开始快速搭建一个项目 通过Webpack + vue-loader 手脚架 https://github.com/vuejs-templates/webpack 按照它的步骤一步一步来 $ npm i ...
- 1.SpringBoo之Helloword 快速搭建一个web项目
背景: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配 ...
随机推荐
- 如何正确使用 Flink Connector?
本文主要分享 Flink connector 相关内容,分为以下三个部分的内容:第一部分会首先介绍一下 Flink Connector 有哪些.第二部分会重点介绍在生产环境中经常使用的 kafka c ...
- day20 作业
目录 今日作业 1.下面这段代码的输出结果将是什么?请解释. 2.多重继承的执行顺序,请解答以下输出结果是什么?并解释. 3.什么是新式类,什么是经典类,二者有什么区别?什么是深度优先,什么是广度优先 ...
- [转]模块化——Common规范及Node模块实现
Node在实现中并非完全按照CommonJS规范实现,而是对模块规范进行了一定的取舍,同时也增加了少许自身需要的特性.本文将详细介绍NodeJS的模块实现 引入 nodejs是区别于javascrip ...
- [转载] DDK中VPORT Mini-Driver的使用说明
学习下. 原文地址:DDK中VPORT Mini-Driver的使用说明作者:跳皮筋的小老鼠 要使用TI DDK中实现的VPORT驱动程序,首先需要在程序中提供VPORT_PortParams类型的参 ...
- springboot 集成eureka 超详细配置
撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> 原文链接: https://blog.csdn.net/nanbiebao6522/article/detail ...
- groups 用户所归属的用户组查询
groups 用法很简单,就是查询用户所归属哪个或哪些用户组: 语法格式: groups 用户名 实例: [beinan@localhost ~]$ groups beinan 注:查询bein ...
- Leetcode94. Binary Tree Inorder Traversal二叉树的中序遍历(两种算法)
给定一个二叉树,返回它的中序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,3,2] 进阶: 递归算法很简单,你可以通过迭代算法完成吗? 递归: class So ...
- LUOGU P1978 集合
题目描述 集合是数学中的一个概念,用通俗的话来讲就是:一大堆数在一起就构成了集合.集合有如 下的特性: •无序性:任一个集合中,每个元素的地位都是相同的,元素之间是无序的. •互异性:一个集合中,任何 ...
- Thinkphp [美味]常用代码
//调试开关 function _initialize () { // 调试开关 C ( 'SHOW_PAGE_TRACE', TRUE ); } //判断 IS_AJAX && $t ...
- placeholder IE兼容,显示password
从网上找了很多关于placeholder IE兼容性的问题,下边的这个js方法可以显示password. <!doctype html> <html lang="en&qu ...