想要快速完成一个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应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配 ...
随机推荐
- MaxCompute,基于Serverless的高可用大数据服务
摘要:2019年1月18日,由阿里巴巴MaxCompute开发者社区和阿里云栖社区联合主办的“阿里云栖开发者沙龙大数据技术专场”走近北京联合大学,本次技术沙龙上,阿里巴巴高级技术专家吴永明为大家分享了 ...
- [C#] 生成 (web): 未能加载文件或程序集“Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7
有时候编译asp.net会遇到奇怪的错误: 生成 (web): 未能加载文件或程序集"Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, ...
- HTMl中常用标签
文本标记语言,即HTML(Hypertext Markup Language),是用于描述网页文档的一种标记语言. HTML之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点.所谓超级链接 ...
- PAT甲级——A1041 Be Unique
Being unique is so important to people on Mars that even their lottery is designed in a unique way. ...
- oracle创建新的连接(表空间?数据库?)
一.创建用户名密码 create user username identified by password --username 是用户名:password 是密码 二.给用户附权.撤权 gra ...
- day65——day69
目录 DAY65 课堂笔记 1.vue实例 2.插值表达式 3.文本指令 4.面向对象js 5.js函数补充 6.事件指令 7.属性指令 DAY66 课堂笔记 1.表单指令 2.条件指令 3.循环指令 ...
- springboot实现定时任务的方式
springboot实现定时任务的方式 a Timer:这是java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务.使用这种方式可以让你的程 ...
- Leetcode504.Base 7七进制数
给定一个整数,将其转化为7进制,并以字符串形式输出. 示例 1: 输入: 100 输出: "202" 示例 2: 输入: -7 输出: "-10" 注意: 输入 ...
- 威胁快报|ProtonMiner挖矿蠕虫扩大攻击面,加速传播
背景 近日,阿里云安全监测到一种挖矿蠕虫,正在互联网上加速传播.阿里云安全根据它使用ProtonMail邮箱地址作为矿池用户名的行为,将其命名为ProtonMiner.据分析,这种蠕虫与TrendMi ...
- js的剪贴板事件
定义 剪贴板操作包括剪切(cut).复制(copy)和粘贴(paste)这三个操作,快捷键分别是ctrl+x.ctrl+c.ctrl+v.当然也可以使用鼠标右键菜单进行操作 关于这3个操作共对应下列6 ...