Как мне настроить PyParsing в Google App Engine?
-
20-09-2019 - |
Вопрос
Я видел в документации Google App Engine, что http://www.antlr.org/ Antlr3 используется в качестве библиотеки стороннего синтаксического анализа.
Но из того, что я знаю, Pyparsing кажется более простым в использовании, и я всего лишь стремлюсь разобрать некоторый простой синтаксис.
Есть ли альтернатива?Могу ли я заставить pyparsing работать в движке приложений?
Решение
"Просто сделай это"!-) Получаем pyparsing.py, напримерОт здесь, и поместите его в каталог вашего приложения App engine;теперь вы можете просто import pyparsing
в коде вашего приложения и используйте его.
Например, измените greeting.py из здесь быть:
from pyparsing import Word, alphas
greet = Word( alphas ) + "," + Word( alphas ) + "!" # <-- grammar defined here
hello = "Hello, World!"
print "Content-type: text/plain\n"
print hello, "->", greet.parseString( hello )
добавьте в свое приложение.yaml прямо под handlers:
две линии:
- url: /parshello
script: greeting.py
запустите свое приложение, посетите http://localhost:8083/parshello
(или на каком бы порту вы ни работали;-), и вы увидите в своем браузере вывод обычного текста:
Hello, World! -> ['Hello', ',', 'World', '!']
Другие советы
Объем времени выполнения Pyparsing намеренно мал именно для этой цели.Это один исходный файл, pyparsing.py , так что просто поместите его среди ваших собственных исходных файлов и разбирайте!
-- Пол