小编naf*_*afe的帖子

GoogleAppEngine urlfetch超时异常

使用GAE urlfetch时,有没有人遇到以下异常的经验?

      DownloadError: ApplicationError: 2 timed out
Run Code Online (Sandbox Code Playgroud)

我正在尝试发送HTTP POST请求.像这样:

      result = urlfetch.fetch('http://api.nathan.com:8080/Obj/',
                              method='POST',
                              payload=postdata,
                              deadline=10)
Run Code Online (Sandbox Code Playgroud)

我已经尝试将截止日期设置为最大值(10秒).来自命令行的请求(使用curl或httplib2)大约需要一秒钟.

       nchong@almond ~ $ time curl
                         -d "<Obj><a>1</a><b>n</b></Obj>"
                         http://api.nathan.com:8080/Obj/
       agd1c2VyYXBpcgoLEgRTZXNzGAIM      #< key returned by call
       real 0m1.109s
       user 0m0.003s
       sys  0m0.009s
Run Code Online (Sandbox Code Playgroud)

这是来自dev appserver的curl请求的输出(我正在使用appengine-rest-server):

INFO     __init__.py:819] adding models from module __main__
INFO     __init__.py:867] added model Obj with type <class '__main__.Obj'>
INFO     dev_appserver.py:3243] "POST /Obj HTTP/1.1" 200 -
INFO     dev_appserver_index.py:205] Updating /path/to/index.yaml
Run Code Online (Sandbox Code Playgroud)

这是我尝试使用urlfetch时的输出:

ERROR    __init__.py:388] ApplicationError: 2 timed out
Traceback (most recent call last):
  File "/path/to/webapp/__init__.py", line …
Run Code Online (Sandbox Code Playgroud)

google-app-engine exception urlfetch

11
推荐指数
1
解决办法
3992
查看次数

在python中自动与网页进行交互

我想自动化与网页的互动.我一直在使用pycurl,但最终网页将使用javascript,所以我正在寻找替代方案.典型的互动是"打开页面,搜索某些文本,点击链接(打开表单),填写表格并提交".

我们正在Google App引擎上部署,如果这有所不同的话.

澄清:我们在appengine上部署网页.但是交互是在一台单独的机器上运行的.所以硒似乎是最好的选择.

python google-app-engine pycurl

4
推荐指数
1
解决办法
8580
查看次数

Django ModelForm:为字段添加别名

我有一个(GoogleAppEngine)Django ModelForm:

class A(db.Model):
  a = db.StringProperty()

class MyAForm(djangoforms.ModelForm):
  class Meta:
    model = A
Run Code Online (Sandbox Code Playgroud)

这将创建一个具有一个字符串字段的表单a.在我的表格中,我想称之为别的,比方说b.所以我想要一个带有字段b的表单,当表单被POST时,我们创建一个新的A实体,其a属性填充-value b.

有没有一个简洁的方法来做这个管道?

(ps我不想改变底层模型)

python django google-app-engine django-forms

2
推荐指数
1
解决办法
5315
查看次数