سؤال

لقد خلقت بلدي 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 مباشرة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top