Python na serwerach w home.pl – moduły oraz wersje

 

Na serwerach w home.pl możesz korzystać z Python 2.7 oraz w przypadku CRONA również z Python 3.6.

W przypadku skryptów uruchamianych z poziomu WEB stosowany jest zawsze Python 2.7.

W związku z powyższym w ramach mechanizmu CRON możesz zastosować dwa typy rozszerzeń: .py (Python w wersji 2.7) i .py3 (Python w wersji 3.6). Oznacza to, że pliki zakończone rozszerzeniem .py3 zostaną wykonane przez CRON z wykorzystaniem Python w wersji 3.6.

Natomiast za pośrednictwem SSH możesz wyświetlić moduły Python, które dostępne są na Twoim serwerze.

Jak przez SSH sprawdzić dostępne moduły Python na serwerze w home.pl?

  1. Połącz się ze swoim serwerem za pomocą SSH.
  2. Po wyświetleniu okna konsoli, skorzystaj z polecenia: python lub python2
  3. Następnie wpisz polecenie: help()
  4. Wpisz komendę: modules
  5. W oknie konsoli wyświetlone zostaną dostępne moduły Python na Twoim serwerze w home.pl.

Dostępne moduły Python na serwerach w home.pl

Pliki zakończone rozszerzeniem .py3 zostaną wykonane przez CRON z wykorzystaniem Python w wersji 3.6.

Crypto              arrow               inspect             requests
Namcap              asn1crypto          io                  resource
OleFileIO_PL        ast                 iotop               rlcompleter
PIL                 asynchat            ipaddress           runpy
__future__          asyncio             isc                 sane
_ast                asyncore            itertools           sched
_asyncio            atexit              jinja2              secrets
_bisect             audioop             json                select
_blake2             avahi               keyword             selectors
_bootlocale         base64              lib2to3             setuptools
_bz2                bdb                 libmount            sh
_cffi_backend       binascii            libxml2             shelve
_codecs             binhex              libxml2mod          shlex
_codecs_cn          bisect              linecache           shutil
_codecs_hk          builtins            locale              signal
_codecs_iso2022     bz2                 logging             site
_codecs_jp          cProfile            lxml                six
_codecs_kr          calendar            lzma                smtpd
_codecs_tw          cffi                macpath             smtplib
_collections        cgi                 macurl2path         sndhdr
_collections_abc    cgitb               mailbox             socket
_compat_pickle      chardet             mailcap             socketserver
_compression        chunk               markerlib           spwd
_crypt              cmath               markupsafe          sqlalchemy
_csv                cmd                 marshal             sqlite3
_ctypes             code                math                sre_compile
_ctypes_test        codecs              matplotlib          sre_constants
_curses             codeop              mimetypes           sre_parse
_curses_panel       collections         mmap                ssl
_datetime           colorsys            modulefinder        stat
_dbm                compileall          multiprocessing     statistics
_decimal            concurrent          namcap              string
_dummy_thread       configparser        netrc               stringprep
_elementtree        contextlib          nis                 struct
_ftdi1              copy                nntplib             subprocess
_functools          copyreg             nose                sunau
_gdbm               crypt               nose_exclude        symbol
_hashlib            cryptography        ntpath              symtable
_heapq              csv                 nturl2path          sys
_imp                ctypes              numbers             sysconfig
_io                 curses              numpy               syslog
_json               cycler              olefile             tabnanny
_locale             datetime            opcode              tarfile
_lsprof             dateutil            operator            telnetlib
_lzma               dbm                 optparse            tempfile
_markupbase         decimal             os                  termios
_md5                difflib             ossaudiodev         test
_multibytecodec     dis                 packaging           textwrap
_multiprocessing    distutils           paramiko            this
_opcode             django              parser              threading
_operator           doctest             pathlib             time
_osx_support        drv_libxml2         pdb                 timeit
_pickle             dummy_threading     pickle              tkinter
_posixsubprocess    easy_install        pickletools         token
_pydecimal          ecdsa               pip                 tokenize
_pyio               elftools            pip2pkgbuild        trace
_random             email               pipes               traceback
_sane               encodings           pkg_resources       tracemalloc
_sha1               ensurepip           pkgutil             tty
_sha256             enum                platform            turtle
_sha3               errno               plistlib            turtledemo
_sha512             faulthandler        ply                 types
_signal             fcntl               poplib              typing
_sitebuiltins       filecmp             posix               unicodedata
_socket             fileinput           posixpath           unittest
_sqlite3            fnmatch             postgresql          urllib
_sre                formatter           pprint              urllib3
_ssl                fractions           profile             uu
_stat               ftdi1               pstats              uuid
_string             ftplib              pty                 venv
_strptime           functools           pwd                 virtualenv
_struct             gc                  py_compile          virtualenv_support
_symtable           genericpath         pyalpm              warnings
_sysconfigdata_m_linux_x86_64-linux-gnu getopt              pyasn1              wave
_testbuffer         getpass             pyclbr              weakref
_testcapi           gettext             pycman              webbrowser
_testimportmultiple glob                pycparser           wheel
_testmultiphase     grp                 pydoc               wsgiref
_thread             gzip                pydoc_data          wtforms
_threading_local    hashlib             pyexpat             xcbgen
_tkinter            heapq               pygments            xdrlib
_tracemalloc        hmac                pylab               xml
_warnings           html                pymysql             xmlrpc
_weakref            http                pyparsing           xxlimited
_weakrefset         httpie              pytz                xxsubtype
abc                 idlelib             queue               zipapp
aifc                idna                quopri              zipfile
antigravity         imaplib             random              zipimport
appdirs             imghdr              re                  zlib
argparse            imp                 readline            pyodbc
array               importlib           reprlib
W przypadku skryptów uruchamianych z poziomu WEB stosowany jest zawsze Python 2.7.

Crypto              arrow               inspect             requests
Namcap              asn1crypto          io                  resource
OleFileIO_PL        ast                 iotop               rlcompleter
PIL                 asynchat            ipaddress           runpy
__future__          asyncio             isc                 sane
_ast                asyncore            itertools           sched
_asyncio            atexit              jinja2              secrets
_bisect             audioop             json                select
_blake2             avahi               keyword             selectors
_bootlocale         base64              lib2to3             setuptools
_bz2                bdb                 libmount            sh
_cffi_backend       binascii            libxml2             shelve
_codecs             binhex              libxml2mod          shlex
_codecs_cn          bisect              linecache           shutil
_codecs_hk          builtins            locale              signal
_codecs_iso2022     bz2                 logging             site
_codecs_jp          cProfile            lxml                six
_codecs_kr          calendar            lzma                smtpd
_codecs_tw          cffi                macpath             smtplib
_collections        cgi                 macurl2path         sndhdr
_collections_abc    cgitb               mailbox             socket
_compat_pickle      chardet             mailcap             socketserver
_compression        chunk               markerlib           spwd
_crypt              cmath               markupsafe          sqlalchemy
_csv                cmd                 marshal             sqlite3
_ctypes             code                math                sre_compile
_ctypes_test        codecs              matplotlib          sre_constants
_curses             codeop              mimetypes           sre_parse
_curses_panel       collections         mmap                ssl
_datetime           colorsys            modulefinder        stat
_dbm                compileall          multiprocessing     statistics
_decimal            concurrent          namcap              string
_dummy_thread       configparser        netrc               stringprep
_elementtree        contextlib          nis                 struct
_ftdi1              copy                nntplib             subprocess
_functools          copyreg             nose                sunau
_gdbm               crypt               nose_exclude        symbol
_hashlib            cryptography        ntpath              symtable
_heapq              csv                 nturl2path          sys
_imp                ctypes              numbers             sysconfig
_io                 curses              numpy               syslog
_json               cycler              olefile             tabnanny
_locale             datetime            opcode              tarfile
_lsprof             dateutil            operator            telnetlib
_lzma               dbm                 optparse            tempfile
_markupbase         decimal             os                  termios
_md5                difflib             ossaudiodev         test
_multibytecodec     dis                 packaging           textwrap
_multiprocessing    distutils           paramiko            this
_opcode             django              parser              threading
_operator           doctest             pathlib             time
_osx_support        drv_libxml2         pdb                 timeit
_pickle             dummy_threading     pickle              tkinter
_posixsubprocess    easy_install        pickletools         token
_pydecimal          ecdsa               pip                 tokenize
_pyio               elftools            pip2pkgbuild        trace
_random             email               pipes               traceback
_sane               encodings           pkg_resources       tracemalloc
_sha1               ensurepip           pkgutil             tty
_sha256             enum                platform            turtle
_sha3               errno               plistlib            turtledemo
_sha512             faulthandler        ply                 types
_signal             fcntl               poplib              typing
_sitebuiltins       filecmp             posix               unicodedata
_socket             fileinput           posixpath           unittest
_sqlite3            fnmatch             postgresql          urllib
_sre                formatter           pprint              urllib3
_ssl                fractions           profile             uu
_stat               ftdi1               pstats              uuid
_string             ftplib              pty                 venv
_strptime           functools           pwd                 virtualenv
_struct             gc                  py_compile          virtualenv_support
_symtable           genericpath         pyalpm              warnings
_sysconfigdata_m_linux_x86_64-linux-gnu getopt              pyasn1              wave
_testbuffer         getpass             pyclbr              weakref
_testcapi           gettext             pycman              webbrowser
_testimportmultiple glob                pycparser           wheel
_testmultiphase     grp                 pydoc               wsgiref
_thread             gzip                pydoc_data          wtforms
_threading_local    hashlib             pyexpat             xcbgen
_tkinter            heapq               pygments            xdrlib
_tracemalloc        hmac                pylab               xml
_warnings           html                pymysql             xmlrpc
_weakref            http                pyparsing           xxlimited
_weakrefset         httpie              pytz                xxsubtype
abc                 idlelib             queue               zipapp
aifc                idna                quopri              zipfile
antigravity         imaplib             random              zipimport
appdirs             imghdr              re                  zlib
argparse            imp                 readline            
array               importlib           reprlib

Jak uruchamiać Pythona z poziomu skryptów bash oraz PHP?

W przypadku PHP należy dodać przed wywołaniem wiersz:

putenv("HOME=/");

Przykładowo:

putenv("HOME=/");
exec('python nazwa_skryptu.py);

W powyższym przykładowym kodzie możesz dodatkowo skorzystać z dwóch poleceń:

  • python spowoduje użycie Python w wersji 3.6
  • python2 spowoduje uzycie Python w wersji 2.7
W przypadku skryptów bash należy dodać przed wywołaniem wiersz:
export HOME="/"

Przykładowo:

export HOME="/"
/usr/share/subversion/hook-scripts/mailer/mailer.py

Jak sprawdzić wersję Pythona, z której został odpalony skrypt?

Aby sprawdzić wersję Pythona, z której został odpalony skrypt, możesz skorzystać z poniższego kodu. Utwórz nowy plik z rozszerzeniem .py, w którym umieścisz poniższy kod i wyślij go na swój serwer FTP. Po wywołaniu tego pliku z poziomu przeglądarki internetowej, na ekranie zostanie wyświetlona wersja Pythona, która została użyta do wykonania skryptu.

import sys
print("Witaj w swiecie Pythona");
print (sys.version);
  • Czy artykuł był pomocny?
  • TAK   Nie
Tematy powiązane
Więcej informacji na forum dyskusyjnym:   Kliknij tutaj, aby przejść na forum.home.pl