13个最受欢迎的Python开源框架。

这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等。

 

Diesel:基于Greenlet的事件I/O框架

Diesel提供一个整洁的API来编写网络客户端和服务器。支持TCP和UDP。

 

Cubes:轻量级Python OLAP框架

Cubes是一个轻量级Python框架,包含OLAP、多维数据分析和浏览聚合数据(aggregated data)等工具。

 

Kartograph.py:创造矢量地图的轻量级Python框架

Kartograph是一个Python库,用来为ESRI生成SVG地图。Kartograph.py目前仍处于beta阶段,你可以在virtualenv环境下来测试。

 

Pulsar:Python的事件驱动并发框架

Pulsar是一个事件驱动的并发框架,有了pulsar,你可以写出在不同进程或线程中运行一个或多个活动的异步服务器。

 

Web2py:全栈式Web框架

Web2py是一个为Python语言提供的全功能Web应用框架,旨在敏捷快速的开发Web应用,具有快速、安全以及可移植的数据库驱动的应用,兼容Google App Engine。

 

Falcon:构建云API和网络应用后端的高性能Python框架

Falcon是一个构建云API的高性能Python框架,它鼓励使用REST架构风格,尽可能以最少的力气做最多的事情。

 

Dpark:Python版的Spark

DPark是Spark的Python克隆,是一个Python实现的分布式计算框架,可以非常方便地实现大规模数据处理和迭代计算。DPark由豆瓣实现,目前豆瓣内部的绝大多数数据分析都使用DPark完成,正日趋完善。

 

Buildbot:基于Python的持续集成测试框架

Buildbot是一个开源框架,可以自动化软件构建、测试和发布等过程。每当代码有改变,服务器要求不同平台上的客户端立即进行代码构建和测试,收集并报告不同平台的构建和测试结果。

 

Zerorpc:基于ZeroMQ的高性能分布式RPC框架

Zerorpc是一个基于ZeroMQ和MessagePack开发的远程过程调用协议(RPC)实现。和 Zerorpc 一起使用的 Service API 被称为 zeroservice。Zerorpc 可以通过编程或命令行方式调用。

 

Bottle: 微型Python Web框架

Bottle是一个简单高效的遵循WSGI的微型python Web框架。说微型,是因为它只有一个文件,除Python标准库外,它不依赖于任何第三方模块。

 

Tornado:异步非阻塞IO的Python Web框架

Tornado的全称是Torado Web Server,从名字上看就可知道它可以用作Web服务器,但同时它也是一个Python Web的开发框架。最初是在FriendFeed公司的网站上使用,FaceBook收购了之后便开源了出来。

 

webpy: 轻量级的Python Web框架

webpy的设计理念力求精简(Keep it simple and powerful),源码很简短,只提供一个框架所必须的东西,不依赖大量的第三方模块,它没有URL路由、没有模板也没有数据库的访问。

 

Scrapy:Python的爬虫框架

Scrapy是一个使用Python编写的,轻量级的,简单轻巧的爬虫抓取框架,并且使用起来非常的方便。

 

 

Python 学习数据爬虫

现行环境下大数据与人工智能的重要依托还是庞大的数据和分析采集,类似于淘宝、京东、百度、腾讯级别的企业,他们是能够通过数据可观的用户群体获取需要的数据。

而一般企业可能就没有这种通过产品获取数据的能力和条件,因此利用爬虫我们可以解决部分数据的问题。

 

1、学习Python基础知识并实现基本的爬虫过程

一般获取数据的过程都是按照 发送请求 - 获得页面反馈 - 解析并且存储数据,这三个流程来实现的。这个过程其实就是模拟了一个人工浏览网页的过程。

Python中爬虫相关的包很多:urllib、requests、bs4、scrapy、pyspider

requests 负责获取网页内容,bs4、Xpath 用于解析网页,便于抽取数据。

 

2、了解非结构化数据的存储

爬虫抓取的数据结构复杂 传统的结构化数据库可能并不是特别适合我们使用。我们前期推荐使用MongoDB 就可以。

 

3、掌握一些常用的反爬虫技巧

使用代理IP池、抓包、验证码的OCR处理等处理方式,可以解决大部分网站的反爬虫策略。

 

4、了解分布式存储

分布式这个东西,听起来很恐怖,但其实就是利用多线程的原理让多个爬虫同时工作,需要你掌握 Scrapy + MongoDB + Redis 这三种工具就可以了。

学习python的学习路线,学习方法,系统学习规划很重要。

 

 

参考推荐

Python框架、库资源大全

开源爬虫软件汇总

网络爬虫工程师被企业劝退的经历

Python金融股票爬虫实战源码大全

常见的量化策略框架,学习量化炒股