This will be similar to starting Python in Windows Part-1 Part-2.
The main focus will be running Python 3.5 or higher on Linux.
It's a open tutorial,so if someone has useful information post it here.
I have tested with Mint 18.1 and Ubuntu 16.04(run at Digital Ocean).
Both of these Distros come with Python 3.5 as default Python 3 version.
Basic install:
PIP
The tool for installing Python packages from PyPi or GitHub,BitBucket and more.
Useful commands:
Virtual environment
The main purpose of Python virtual environments is to create an isolated environment for Python projects.
This means that each project can have its own dependencies, regardless of what dependencies every other project has.
These dependencies can be written to a
Did install it first in post
From Python 3.6 will be build in,for Python 3.5 using 3-party Virtualenv.
So need to install BeautifulSoup, Requests, lxml into virtual environment.
if something break in future we can now see that with these versions it did work.
Can also install with it.
Overview image:
[Image: 7KAU5q.jpg]
The main focus will be running Python 3.5 or higher on Linux.
It's a open tutorial,so if someone has useful information post it here.
I have tested with Mint 18.1 and Ubuntu 16.04(run at Digital Ocean).
Both of these Distros come with Python 3.5 as default Python 3 version.
Basic install:
Output:sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install python3-dev
sudo apt install python3-pip
sudo pip3 install virtualenv
Testing version:mint@mint ~ $ python3 -V Python 3.5.2 mint@mint ~ $ python -V Python 2.7.12 mint@mint ~ $ pip3 -V pip 9.0.1 from /usr/local/lib/python3.5/dist-packages (python 3.5) # Upgrade pip mint@mint ~ $ pip3 install -U pip Requirement already up-to-date: pip in /usr/local/lib/python3.5/dist-packagesRunning script with Python 3.5 and install with pip3:
# Running code mint@mint ~ $ python3 hello.py hello world # Install Requests mint@mint ~ $ sudo pip3 install requests Collecting requests Downloading requests-2.14.2-py2.py3-none-any.whl (560kB) 100% |████████████████████████████████| 563kB 1.1MB/s Installing collected packages: requests Successfully installed requests-2.14.2 # Test that Requests work mint@mint ~ $ python3 Python 3.5.2 (default, Nov 17 2016, 17:05:23) [GCC 5.4.0 20160609] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import requests >>> r = requests.get('https://www.python.org/') >>> r.status_code 200 >>> r.encoding 'utf-8' >>> r.headers['date'] 'Sun, 21 May 2017 13:42:43 GMT'
PIP
The tool for installing Python packages from PyPi or GitHub,BitBucket and more.
Useful commands:
Output:pip help (show commands)
# Install and uninstall into Python
pip install requests
pip uninstall requests
# Wheel(.whl)
pip install some_package.whl
pip uninstall some_package.whl
--- Diffrent ways ---
pip install git+https://github.com/cherrypy/cherrypy.git
pip install -r requirements.txt # A demo later
# Upgrade pip
pip3 install -U pip
# Show version
pip -V
# Show installed packages
pip list
pip freeze
# search PyPi for packages with term "flask" in it
pip search flask
Virtual environment
The main purpose of Python virtual environments is to create an isolated environment for Python projects.
This means that each project can have its own dependencies, regardless of what dependencies every other project has.
These dependencies can be written to a
requirements.txt
which we look at later.Did install it first in post
sudo pip3 install virtualenv
From Python 3.6 will be build in,for Python 3.5 using 3-party Virtualenv.
# Make virtualenv that use Python 3.5 mint@mint ~/Desktop/my_env $ virtualenv -p /usr/bin/python3.5 my_env mint@mint ~ $ cd my_env # Activate virtualenv mint@mint ~/Desktop/my_env $ source bin/activate # Check python loaction (my_env) mint@mint ~/my_env $ which python /home/mint/my_env/bin/python # pip version (my_env) mint@mint ~/my_env $ pip -V pip 9.0.1 from /home/mint/my_env/lib/python3.5/site-packages (python 3.5)Running this code
find_title.py
in virtual environment.So need to install BeautifulSoup, Requests, lxml into virtual environment.
# find_title.py import requests from bs4 import BeautifulSoup def find_title(url): url_get = requests.get(url) soup = BeautifulSoup(url_get.content, 'lxml') print(soup.select('head > title')[0].text) if __name__ == '__main__': #url = 'http://CNN.com' url = 'https://www.python.org/' find_title(url)
(my_env) mint@mint ~/my_env $ pip install beautifulsoup4 requests lxml Collecting beautifulsoup4 Downloading beautifulsoup4-4.6.0-py3-none-any.whl (86kB) 100% |████████████████████████████████| 92kB 821kB/s Collecting requests Downloading requests-2.14.2-py2.py3-none-any.whl (560kB) 100% |████████████████████████████████| 563kB 1.2MB/s Collecting lxml Downloading lxml-3.7.3-cp35-cp35m-manylinux1_x86_64.whl (7.1MB) 100% |████████████████████████████████| 7.1MB 233kB/s Installing collected packages: beautifulsoup4, requests, lxml Successfully installed beautifulsoup4-4.6.0 lxml-3.7.3 requests-2.14.2Running code:
Output:(my_env) mint@mint ~/my_env $ python3 find_title.py
Welcome to Python.org
Make requirements.txt
for this virtual environment.(my_env) mint@mint ~/my_env $ pip freeze > requirements.txt (my_env) mint@mint ~/my_env $ cat requirements.txt appdirs==1.4.3 beautifulsoup4==4.6.0 lxml==3.7.3 packaging==16.8 pkg-resources==0.0.0 pyparsing==2.2.0 requests==2.14.2 six==1.10.0So we see which version that are used,
if something break in future we can now see that with these versions it did work.
Can also install with it.
pip install -r requirements.txt
Overview image:
[Image: 7KAU5q.jpg]