什么是 PyQt Web 工具包 Qwebview 的默认用户代理以及如何获取它
what is the Default user-Agent of PyQt Web kit Qwebview and how to get it
我是 python 的新手,正在使用具有 Web 浏览器的 PyQt 开发 GUI。我想展示用户代理与 Url 一起使用但没有创建 way.my 代码是 -
class Manager(QNetworkAccessManager):
def __init__(self, table):
QNetworkAccessManager.__init__(self)
self.finished.connect(self._finished)
self.table = table
def _finished(self, reply):
headers = reply.rawHeaderPairs()
headers = {str(k):str(v) for k,v in headers}
content_type = headers.get("Content-Type")
# some code like "print headers.get("User-Agent")"
url = reply.url().toString()
status = reply.attribute(QNetworkRequest.HttpStatusCodeAttribute)
status, ok = status.toInt()
self.table.update([url, str(status), content_type])
目前,上面的代码仅显示 URL、状态和内容类型,但我还想显示用户 agent.do 有人知道吗?
A User-Agent
是发送到服务器的东西。此信息不是从服务器发送的。
要设置用户代理,您可以使用 Manager
class 执行以下操作,例如:
from PyQt4.QtNetwork import QNetworkAccessManager, QNetworkRequest
manager = Manager()
request = QNetworkRequest(QUrl("http://www.google.com/"))
request.setRawHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1")
manager.get(request)
并修改您的 def _finished(self, reply):
方法以使用 User-Agent
:
获取请求
def _finished(self, reply):
print reply.request().rawHeader("User-Agent")
我是 python 的新手,正在使用具有 Web 浏览器的 PyQt 开发 GUI。我想展示用户代理与 Url 一起使用但没有创建 way.my 代码是 -
class Manager(QNetworkAccessManager):
def __init__(self, table):
QNetworkAccessManager.__init__(self)
self.finished.connect(self._finished)
self.table = table
def _finished(self, reply):
headers = reply.rawHeaderPairs()
headers = {str(k):str(v) for k,v in headers}
content_type = headers.get("Content-Type")
# some code like "print headers.get("User-Agent")"
url = reply.url().toString()
status = reply.attribute(QNetworkRequest.HttpStatusCodeAttribute)
status, ok = status.toInt()
self.table.update([url, str(status), content_type])
目前,上面的代码仅显示 URL、状态和内容类型,但我还想显示用户 agent.do 有人知道吗?
A User-Agent
是发送到服务器的东西。此信息不是从服务器发送的。
要设置用户代理,您可以使用 Manager
class 执行以下操作,例如:
from PyQt4.QtNetwork import QNetworkAccessManager, QNetworkRequest
manager = Manager()
request = QNetworkRequest(QUrl("http://www.google.com/"))
request.setRawHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1")
manager.get(request)
并修改您的 def _finished(self, reply):
方法以使用 User-Agent
:
def _finished(self, reply):
print reply.request().rawHeader("User-Agent")