May 15, 2012

Some Great Python Tools

Recently, I start to learn python since it is very convenient and powerful. And I'm gonna introduce some great python tools that will be very helpful in the future work.

1. pip
The first one is pip. It is a tool that will help you managing the python packages. A great replacement for easy_install, but more powerful.
In Ubuntu, you can simply install pip by typing
sudo apt-get install python-pip

or you can download the package from the following link
http://pypi.python.org/pypi/pip#downloads
untar the file and type
sudo python setup.py

U can use pip to install python package either from web site or tar files.
type
pip search $PACKAGE_NAME
and it will search the package 4 u.

simply type
pip install $PACKAGE_NAME
will help u install the package to your system.


2. virtualenv & virtualenvwrapper
The second tool I'm gonna introduce is virtualenv. It is a tool to help u creating a virtual python environment to solve the consistency problem.
In Ubuntu, simply type
sudo apt-get install python-virtualenv

or u can use pip to help you install virtualenv, just type
sudo pip install virtualenv

And if you have many projects that need to be managed, virtualenvwrapper is a very good choice. The tools contains some wrapper function from virtualenv and help u ease your job.

If u want to get familiar with virtualenv and virtualenvwrapper the following links are some good tutorials about these tools.
http://mathematism.com/2009/07/30/presentation-pip-and-virtualenv/
http://www.doughellmann.com/articles/pythonmagazine/completely-different/2008-05-virtualenvwrapper/index.html
http://simononsoftware.com/virtualenv-tutorial/

3. scapy
scapy is a very powerful tool for packet manipulation and packet sniffing. If you want to play with packets and learn some internet protocols or doing some internet forensic or pen-testing it is a very useful tools. The official documentation is great start to learn scapy. I will also post some tutorial of how to use scapy in the future.
http://www.secdev.org/projects/scapy/doc/index.html
http://fossies.org/dox/scapy-2.2.0/annotated.html
http://www.secdev.org/projects/scapy/

want to install just type
sudo pip install scapy
or
sudo apt-get install python-scapy

4. Django or Pyramid
Django and Pyramid are both high-level web framework for programmers to develop their own web project in a rapid way. In short, they are "ruby on rails " in python :P
Even though both tools can help people organize their web framework, but they are still different.
The comparison of these two framework can be found in these links.
http://stackoverflow.com/questions/48681/pros-cons-of-django-vs-pylons
http://xiaonuogantan.wordpress.com/2011/12/24/pyramid-vs-django/
http://www.slideshare.net/whykay/python-ireland-may-2011-what-is-pyramid-and-where-is-it-with-respect-to-django-by-kevin-gill
There are still more, you can just google for that.

Here are some links that will help u dig deeper in Django.
https://docs.djangoproject.com/en/1.4/
http://www.djangobook.com/en/2.0/

And also some links for Pyramid
http://docs.pylonsproject.org/en/latest/docs/pyramid.html

5. Scrapy
Scrapy is a high-level python web crawling framework. If you want to design some web robot or web spider, Scrapy is a good choice.

The documentation of scrapy is right here
http://scrapy.org/doc/

want to install just type
sudo pip install scrapy
or
sudo apt-get install python-scrapy

No comments:

Post a Comment

Labels