python - 使用 pycurl 从服务器获取响应

标签 python curl dbpedia pycurl spotlight-dbpedia

def curlDBPedia(DB_url):
    data = json.dumps({"text":"President Obama called Wednesday on Congress to extend a tax break for students included in last year's economic stimulus package, arguing that the policy provides more generous assistance.",
    "confidence": "0.2", "support": "20"
    })
    c = pycurl.Curl()
    c.setopt(pycurl.URL, DB_url)
    c.setopt(pycurl.POST, 1)
    c.setopt(pycurl.POSTFIELDS, data)
    c.perform()
curlDBPedia("http://spotlight.dbpedia.org/rest/annotate")

程序如上面给出,但我无法从服务器得到正确的响应。 错误是: )

com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59) com.sun.grizzly.ContextTask.run(ContextTask.java:71) com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532) com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513) java.lang.Thread.run(Thread.java:701) . . . .

这只是错误的一个快照。

如何修复它?

最佳答案

你可以尝试这个代码..

def curlDBPedia(DB_url):
        data = json.dumps({"text":"President Obama called Wednesday on Congress to extend a tax break for students included in last year's economic stimulus package, arguing that the policy provides more generous assistance.",
        "confidence": "0.2", "support": "20"
        })
        buffer = StringIO()
        c = pycurl.Curl()
        c.setopt(pycurl.URL, DB_url)
        c.setopt(pycurl.POST, 1)
        c.setopt(pycurl.POSTFIELDS, data)
        c.setopt(c.WRITEFUNCTION, buffer.write)
        c.perform()
        c.close()
        body = buffer.getvalue()#here we got the response data
    curlDBPedia("http://spotlight.dbpedia.org/rest/annotate")

关于python - 使用 pycurl 从服务器获取响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30890412/

相关文章:

SPARQL 和 DBPedia - 从 wiki 页面重定向名称获取基本 url

python - 使用 quiver 图覆盖在 python 中绘制 geotiff

python - 如何在 numpy 中实现定点二进制支持

python - 如何在python中的循环外设置变量

python - 在 python PIL 中使用三次插值放大图像

php - 为什么 PHP 拒绝在 Windows 上启用 cURL

c++ - 将curl执行的输出保存到c++中的 vector <string>

php - 将 cookie 与 CURL 结合使用

wikipedia - DBPedia 和维基百科数据有什么区别?

java - 无法获取 Dbpedia 类的名称