2009-09-23 83 views
1

我在想Python有什么好的网络库/框架。Python有哪些网络库/框架?

请为图书馆提供一个链接到标准的API文档,也许体面的教程链接,开始使用它。

关于其优点/缺点的一两个评论也很好。

+2

很多很多类似的问题:http://stackoverflow.com/search?q=python+networking+library – 2009-09-23 22:10:17

+2

重复:http://stackoverflow.com/questions/441849/good-python-networking-libraries-for-building-a-tcp-server – 2009-09-23 22:30:16

回答

4

考虑Twisted框架。优点:

  • 固体反应器,几乎所有的网络协议实现
  • 支持在野外
  • 有据可查

缺点发现:

  • 巨大
  • 级异步的API需要一些时间来适应(但是一旦你熟悉的事情实际上是非常有用)

CPython的本身附带了一个小小的reactor/socket package。不过,从来没有使用过它。

+0

扭曲并不是很大,这是一种误解,我不知道它来自哪里。我只是在我的扭曲副本中添加了.py文件的大小,只有9.7MB。这是非常小的**,考虑到今天出售的大多数硬盘大于500GB。即使手机也可以轻松使用。而在不到10MB的时候,我几乎可以支持野外发现的几乎所有协议。我可以删除它的一部分,以使其更小,但几乎没有价值可以节省的MB。请澄清你的意思与*巨大*。 – nosklo 2009-09-23 23:11:47

+5

这对于编码或理解它所花费的时间,它提供的功能数量,或可以使用它的微妙不同方式的数量来说都相当大。 – jnylen 2009-09-23 23:22:02

+0

庞大,不一定像文件大小一样巨大。如果磁盘空间实际上是一个问题,那么可以通过几乎任何优化器来清除该库。 – Soviut 2009-09-24 05:49:40

6

标准库有asyncore这对于非常简单的东西以及SocketServer的东西是很好的,如果你更喜欢做线程的东西的话。还有Twisted,但如果您不习惯事件驱动的IO,那么进入这个位置的障碍有点高。如果你是在网页框架之后,CherryPy是一个好的开始,或者如果你正在寻找更全面的功能,那么这里有DjangoTurboGears