Use python 2 bibliotecas (Galego)

python 2.7 / 3 | java 8/11 | php | ruby | ir 1.11 / 1.12 + | node.js

Pode usar as bibliotecas de terceiros que son exclusivos Código Python sen extensións C. Para iso, copie a biblioteca do directorio de aplicacións. Se a biblioteca de terceiros xa está integrada e empaquetada co ambiente de execución, pode usalo sen copialo na súa aplicación.

As bibliotecas de terceiros deben ser implementadas como código exclusivo de Python sen extensións C. Se Copiado no directorio da súa solicitude, son considerados para as accións de ficheiros, xa que a biblioteca está cargada no motor de aplicación xunto co código da aplicación.

Copiar unha biblioteca de terceiros

a Use unha biblioteca de terceiros que non está na lista de bibliotecas integradas e empaquetada co ambiente de execución, faga o seguinte:

  1. Crear un directorio para almacenar as bibliotecas de terceiros, como lib/.

    mkdir lib
  2. EUA Pip (versión 6 ou posterior) con A marca -t <directory> para copiar as bibliotecas do cartafol que creou no paso anterior. Por exemplo:

    pip install -t lib/ <library_name>

    usas homebrew para python en macos?

    Problemas homebrew

    Se usa homebrew para Python en MacOS, pode xurdir unha excepción cando executas pip install -t. Este problema está relacionado cun problema de instalación homebrew coñecido (consulta ) da configuración de Python que ten homebrew. Para resolver este problema, crear un ficheiro ~/.pydistutils.cfg No seu directorio principal temporalmente co seguinte contido:

    prefix=

    Asegúrese de eliminar este ficheiro despois de instalar paquetes para a súa aplicación App Engine, como será impedir que instale paquetes fóra deste contexto.

  3. Crear un ficheiro chamado appengine_config.py na mesma carpeta que o seu ficheiro .

  4. Editar o ficheiro appengine_config.py e fornece o seu directorio de bibliotecas ao método

    .

    # appengine_config.pyfrom google.appengine.ext import vendor# Add any libraries install in the "lib" folder.vendor.add('lib')

    no ficheiro appengine_config.py Anterior, suponse que o cartafol lib está situado no directorio de TRA Ata agora Nalgúns casos, como as probas das unidades, o directorio de traballo actual pode ser diferente. Para evitar erros, pode ir ao camiño completo ao cartafol lib coa seguinte:

    vendor.add(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'lib'))

Usar ficheiros de requisitos pip con bibliotecas copiedades

pip pode ler unha lista de Bibliotecas que deben instalarse desde un ficheiro coñecido como o ficheiro de requisitos. Os ficheiros de requisitos facilitan a configuración dun novo ambiente de desenvolvemento para a súa aplicación e están actualizados ás novas versións da biblioteca.

Un ficheiro de ficheiro é un ficheiro de texto cunha liña de biblioteca de biblioteca O nome do paquete e, opcionalmente , a versión para o paquete (o valor predeterminado é a última versión):

Flask==0.10Markdown==2.5.2google-api-python-client

Para instalar as bibliotecas a partir dun ficheiro de requisitos, use a marca -r ademais da marca -t lib:

pip install -t lib -r requirements.txt

Usar un construído -In biblioteca de terceiros e empaquetada co ambiente de execución

Se a biblioteca de terceiros está na lista de bibliotecas integradas e empaquetada co ambiente de execución de Python no motor de aplicacións, só tes que especificalo A Directiva de Bibliotecas no . Por exemplo:

libraries:- name: PIL version: "1.1.7"- name: webob version: "1.1.1"

App Engine automaticamente fornece as bibliotecas solicitadas durante a implementación.

Usar bibliotecas integradas e empaquetado co desenvolvemento local do servidor

Moitas das bibliotecas integradas que proporcionan o contorno de execución están dispoñibles automaticamente para o servidor de desenvolvemento local. Para instalar algunhas bibliotecas localmente, debes executar gcloud components install app-engine-python-extras. Se o servidor de desenvolvemento local detecta que este compoñente é necesario, pedirache que o instale. As seguintes bibliotecas integradas deben estar instaladas localmente para que poida usalas co servidor de desenvolvemento local:

  • lxml
  • Matplotlib
  • MySQLDB
  • numpy
  • pil
  • crcmod
  • pycrypto
  • grpcio
  • protobuf

Pode usar o comando PIP para instalar todos estes paquetes do índice de paquetes Python (pypi).

sudo pip install lxml==2.3.5

de acordo coa súa plataforma, pode que precise instalar ferramentas de asistencia de compilación e fontes de Python para instalar estas bibliotecas.

  • En Linux, o xestor de paquetes pode proporcionar estes requisitos e, moitas veces, pode proporcionar unha versión xa compilada da biblioteca.
  • en Windows, os instaladores das versións xa compiladas adoitan estar dispoñibles.
  • en MacOS, as ferramentas de liña de comandos Xcode están obrigadas a compilar algúns paquetes.

O servidor de desenvolvemento usa a versión do paquete que instalou localmente, independentemente da versión especificada en . Se o desexa, configura un virtualenv para que o seu proxecto proporcione a versión exacta do paquete. Teña en conta que VirtualenV só se usa para estes paquetes binarios localmente e non estará dispoñible para a súa aplicación unha vez que se implementa. Para engadir bibliotecas adicionais de terceiros, use o método descrito na instalación dunha biblioteca.

EUA Django no servidor de desenvolvemento local

Django é un marco de aplicacións web con todas as funcións para Python. Proporciona unha batería completa de compoñentes intercambiables, como oficina, vistas, middleware, compoñentes de modelos e moitos outros.

A interface de modelado de datos Django non é compatible co almacén de datos de motores de aplicacións. Pode utilizar os datos APP mecanismo de modelaxe bibliotecas (DB ou NDB) nas súas aplicacións Django.sin, aplicacións de terceiros do Django que usan datos do Django modelaxe interface, particularmente a aplicación administrador do Django, non pode traballar directamente con Google App Engine.

A biblioteca de modelos de datos (DB) é a opción predeterminada. Para usar Django coa API de almacenamento NDB, engade 'google.appengine.ext.ndb.django_middleware.NdbDjangoMiddleware', á entrada MIDDLEWARE_CLASSES no seu ficheiro settings.py de Django. Recoméndase inserilo diante de calquera outro tipo de middleware, xa que algúns outros middleware poden chamar á tenda de datos e as chamadas non se tratarán correctamente se ese middleware é invocado antes de poder obter. Máis información Sobre Django Middleware na documentación do proxecto.

Para activar Django na súa aplicación, especifique a aplicación WSGI e a biblioteca Django en :

...handlers:- url: /.* script: main.app # a WSGI application in the main module's global scopelibraries:- name: django version: "1.4"

A variable de ambiente DJANGO_SETTINGS_MODULE debe configurarse co nome do módulo de configuración Django, que normalmente é 'settings', antes de importar os paquetes.

Se o módulo de configuración Django non é settings.py, configure a variable de ambiente segundo corresponda no ficheiro :

env_variables: DJANGO_SETTINGS_MODULE: 'myapp.settings'

Tamén pode facelo en O seu código de Python:

import os# specify the name of your settings moduleos.environ = 'myapp.settings'import django.core.handlers.wsgiapp = django.core.handlers.wsgi.WSGIHandler()

EUA matplotlib no servidor de desenvolvemento local

matplotlib é unha biblioteca de deseño que produce gráficos e figuras nunha variedade de formatos de imaxe. No motor da aplicación, os modos interactivos matplotlib non son compatibles, e tampouco hai outras funcións que non están dispoñibles. Isto significa que non pode usar pyplot.show(), como suxeriu en varias instrucións de Matplotlib. No seu canto, ten que usar pyplot.savefig() para escribir os datos da imaxe na transmisión de saída, unha instancia cStringIO.StringIO ou Google Cloud Storage usando a biblioteca Cloud Storage Cliente.

MatplotLib permite unha extensa personalización empregando o ficheiro de configuración matplotlibrc, que debería ser colocado no directorio superior da aplicación. Alternativamente, pode configurar a variable de ambiente a un camiño en relación ao directorio da súa aplicación.

O backend predeterminado é AGG, que lle permite escribir ficheiros De todos os formatos compatibles: PNG (o formato por defecto), RAW, PS, PDF, SVG e SVGZ. Se permite que a biblioteca estea dispoñible engadindo PIL á sección

de , o backend de AGG tamén admitirá automaticamente a redacción de formatos de imaxe JPEG e TIFF.

MatplotLib ten varias fontes que están dispoñibles automaticamente. Pode usar fontes personalizadas se cargas-las en formato TTF xunto coa aplicación e configurar a variable de ambiente TTFPATH como a ruta na que están situados, en relación co directorio de aplicacións. Para obter máis información, consulte a referencia de .

varias funcións de MatplotLib non son compatibles co motor de aplicacións.En particular, considere o seguinte:

  • sen directorio ~/.matplotlib. Non obstante, hai lugares alternativos para colocar o ficheiro de configuración matplotlibrc, como se describe anteriormente.
  • Os backends interactivos e os elementos da GUI non son compatibles.
  • As backends EMF, Cairo e GDK non están permitidas.
  • Non hai almacenamento en caché e, polo tanto, varios mecanismos recalcularán ou descargarán os datos que normalmente farían caché. Introduza os mecanismos de almacenamento de caché específicos que estaban desactivados, os datos de fontes que calculan matplotlib.font_manager.FontManager.findfont, os datos de mostra que descarga matplotlib.cbook.get_sample_data e os datos financeiros que descargas matplotlib.finance.fetch_historical_yahoo.
    • porque non hai almacenamento en caché, non é posible chamar (http://matplotlib.org/api/cbook_api.html#matplotlib.cbook.get_sample_data) con asfileobj=False, a menos que examples.download configure en False.
  • Todas as funcións que invocan os comandos externos foron desactivados.
    • O uso de fontconfig foi desactivado. As fontes atópanse no mecanismo descrito anteriormente.
    • O uso do látex non está permitido para a renderización de texto. Set text.usetex en non funcionará.
    • O uso dun programa de sintetización externo PostScript non é compatible. Set ps.usedistiller en ghostscript ou xpdf non funcionará.
    • É admitido o uso dun programa de codificación de vídeo externo. O método

      non funcionará e, polo tanto, o paquete matplotlib.animation non é útil.

    • non están permitidos nin a función matplotlib.cbook.report_memory nin a clase matplotlib.cbook.MemoryMonitor.
  • a función matplotlib.test foi desactivado.

Deixa unha resposta

O teu enderezo electrónico non se publicará Os campos obrigatorios están marcados con *