我在Google App Engine上使用了lxml来抓取一些基本数据。
它适用于SDK。当我尝试在我得到的appengine服务器上使用它时。
IOError: Error reading file 'http://www.google.com': failed to load external entity "http://www.google.com"
我的代码看起来像;
import lxml.html
url = "http://www.google.com"
t = lxml.html.parse(url)
pagetitle = t.find.(".//title").text
self.response.out.write(pagetitle)
编辑: 我最终不得不做一个小改动来处理,如下面的答案所示。
from google.appengine.api import urlfetch
result = urlfetch.fetch(url)
t = lxml.html.fromstring(result.content)
答案 0 :(得分:3)
GAE不支持打开套接字,您应该使用urlfetch.fetch()
获取页面内容,然后将其提供给解析器。