我写了个python读取12306网页的脚本本地运行良好,一旦提交到GAE就报错

2020-04-26 科技 85阅读

在python中,一般我们使用urllib的urlopen来打开一个URL并抓取网页内容或者服务器的返回数据 !

但是在GAE中不能这样做,否则会报“访问被拒绝”字样的错误,主要原因是python中的urlopen使用了socket来连接,GAE处于安全和效率等方面的考虑,禁止使用urlopen,而以 urlfetch替代之,后者则是基于HTTP连接的!


你可以参考下面这个对代码进行修改:

from google.appengine.api import urlfetch  
  
# ... ...  
  
url = "http://www.python.org"  
  
result = urlfetch.fetch(url)  
if result.status_code == 200:  
        doc = result.content  
        do_something(doc)

如果解决了您的问题请采纳!
如果未解决请继续追问!

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com