هل تقبل GAE Twill على الإطلاق؟
-
04-10-2019 - |
سؤال
لقد خلقت بلدي GAE التطبيق في الدليل "طلبي". داخل هذا الدليل ، قمت بإنشاء ملف .py وأسمته"my_scrypt".
محتويات "my_scrypt"في البداية كانت على النحو التالي:
print 'Content-Type: text/plain'
print ''
print 'This is my first application'
ثم ركضته محليًا على جهازي (ويندوز إكس بي) في المتصفح المثبت (موزيلا فايرفوكس) مع "قاذفة GAE" - كان كل شيء على ما يرام - استطعت أن أرى هذه الجملة ("هذا هو طلبي الأول") على الشاشة.
ثم قمت بنشر هذا التطبيق على GAE (مرة أخرى بمساعدة "قاذفة GAE") - كان كل شيء على ما يرام مرة أخرى - يمكن أن أرى نفس الجملة على الشاشة.
ثم غيرت محتويات ""my_scrypt" بعض الشيء:
from twill.commands import *
config('use_tidy', '0')
go ("http://us.yahoo.com/")
showlinks()
تم تنزيله "twill0.9" (من هنا) ، اختار ونسخ "نسيج قطني طويل"مجلد من هناك ، ولصقه في"طلبي" الدليل.
عندما قمت بتشغيل هذا التطبيق الجديد محليًا (مع "قاذفة GAE") كان كل شيء على ما يرام - يمكن أن أرى قائمة من yahoo.com روابط على الشاشة ، ولكن عندما قمت بتحميل هذا التطبيق إلى GAE, ، تلقيت رسالة خطأ فقط.
لماذا هو كذلك؟ لا أعتقد أن ذلك بسبب نسخة من ميكانيكي يجري استخدامه من قبل نسيج قطني طويل هنا قديم جدًا - الرمز في "my_script"بسيط جدا ، أي نسخة من ميكانيكي يجب أن تكون قادرة على التعامل معها.
يفعل GAE قبول نسيج قطني طويل (كوحدة خارجية) على الإطلاق؟
يمكنك عرض تتبع المكدس للخطأ في القسم "التحديث 1" أدناه (↓).
تحديث 1:
(هذا التحديث هو إجابتي على نيك)
مرحبا نيك. لقد راجعت وحدة التحكم في المسؤول ، لذا إليك تتبع المكدس:
<type 'exceptions.ImportError'>: No module named fcntl
Traceback (most recent call last):
File "/base/data/home/apps/silkybutton/1.344911014283513184/bumper.py", line 1, in <module>
from twill.commands import *
File "/base/data/home/apps/silkybutton/1.344911014283513184/twill/__init__.py", line 52, in <module>
from shell import TwillCommandLoop
File "/base/data/home/apps/silkybutton/1.344911014283513184/twill/shell.py", line 9, in <module>
from twill import commands, parse, __version__
File "/base/data/home/apps/silkybutton/1.344911014283513184/twill/commands.py", line 70, in <module>
from browser import TwillBrowser
File "/base/data/home/apps/silkybutton/1.344911014283513184/twill/browser.py", line 17, in <module>
from _browser import PatchedMechanizeBrowser
File "/base/data/home/apps/silkybutton/1.344911014283513184/twill/_browser.py", line 9, in <module>
from utils import FixedHTTPBasicAuthHandler, FunctioningHTTPRefreshProcessor
File "/base/data/home/apps/silkybutton/1.344911014283513184/twill/utils.py", line 12, in <module>
import subprocess
File "/base/data/home/apps/silkybutton/1.344911014283513184/twill/other_packages/subprocess.py", line 378, in <module>
import fcntl
المحلول
Twill يحاول استيراد "عملية فرعية". هذه وحدة بيثون لتفريخ المواضيع ، وهي غير متوفرة على محرك التطبيق. ستحتاج إما إلى معرفة ما إذا كان يمكنك إقناع Twill بالعمل دون تفريخ عمليات (ربما عن طريق تعديل الكود) ، أو ستحتاج إلى استخدام ميكانيكي أو ببساطة urlfetch مباشرة.