需求:
我想用pyqt做前端GUI,功能类似浏览器,发起http请求(get,post,put,delete) ,获取数据之后更新UI(备注:我不想用Qwebkit,此时不想写HTML)。
遇到的麻烦 :
google出来的资料非常的少,一翻努力之后发现可用QNetworkAccessManager来实现发送 http请求的功能,但是不知道如何带用户认证,看了QT的文档之后也不知道如何去用。
因为之前一直写WEB,现在在写桌面GUI的时候思维总是照着写WEB的方式去写,有点转不过弯。
希望:
有没有现成的pyqt的开源项目 ,功能类似我的需求,因为pyqt的example非常少,我想如果有类似的开源项目来学习就最好了。
1
Sylv 2015-06-14 03:52:09 +08:00 via iPhone
个人愚见:HTTP 请求没必要通过 PyQt 实现吧,用 Python 自带库或第三方库如 requests 来实现,PyQt 就只用来负责实现 GUI,这样不行吗?
|
3
Sylv 2015-06-14 10:42:38 +08:00 via iPhone
@yeelone 用 QThread 再开个线程用来处理网络请求,这样可以吗?
很久没用 PyQt 了,细节记不清了,之前我有个项目应该是这样实现的。 |
4
yeelone OP @Sylv 我现在用requests-futures 这个库,实验了一下应该是可以了。
类似代码如下: ``` def handler(self): session = FuturesSession() self.feture = session.get('http://baidu.com/get', background_callback=self.reply) response = self.feture.result() def reply(self,sess,resp): print(resp.content) ``` |