想要快速完成一个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应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配 ...
随机推荐
- Gym - 102021E
Gym - 102021Ehttps://vjudge.net/problem/2109787/origin主要是一个处理精度的技巧,避免精度误差可以加eps,然后乘1e(小数点之后的位数). #in ...
- grant
# 添加超级用户 grant all privileges on *.* to 'dump_tmp'@'10.10.10.10' identified by 'dump_tmp'; grant all ...
- 微信回调校验失败兼容php7
今天在移动微信支付的代码的时候,发现校验失败,之前好好的,一点点打印了,顺着微信校验程序打印看结果,发现 $xml = $GLOBALS['HTTP_RAW_POST_DATA'];; 接收到的数据 ...
- noi.openjudge 二分法求函数的零点
二分法求函数的零点 总时间限制: 1000ms 内存限制: 65536kB 描述 有函数:f(x) = x5 - 15 * x4+ 85 * x3- 225 * x2+ 274 * x - 121 已 ...
- 微信小程序多商品评价评星提交
<form bindsubmit="submitComment"> <block wx:for="{{commentList}}" wx:ke ...
- Android根据联系人姓名首字符顺序读取通讯录
Android根据联系人姓名首字符顺序读取通讯录 版权声明:本文为Zhang Phil原创文章,欢迎转载!转载请注明出处:http://blog.csdn.net/zhangphil 本文给出了A ...
- 打包成exe可执行文件的方法
Python安装扩展库与打包成exe可执行文件的方法 1.安装扩展库的几种方法. 首先可能需要使用 pip install --upgrade pip 来升级本机的pip程序.然后在命令提示符环境(即 ...
- XML 映射文件
MyBatis 的真正强大在于它的映射语句,这是它的魔力所在.由于它的异常强大,映射器的 XML 文件就显得相对简单.如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% ...
- DP学习之路(1) 01背包
动态规划是算法中一门很重要的思想,其通过对每一步的假设规划,不停的寻找最优最有利的解决方案,然后一步一步求解出来. 而01背包是其中最基本的一种dp思想,其题目一般为给定一个容量为V的背包,然后有n件 ...
- 自定义切面实现用户日志记录--AOP
在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.AOP是OOP的延续,是软件开发中的 ...