--- a/src/eric7/WebBrowser/UserAgent/UserAgentReader.py Wed Jul 13 11:16:20 2022 +0200 +++ b/src/eric7/WebBrowser/UserAgent/UserAgentReader.py Wed Jul 13 14:55:47 2022 +0200 @@ -15,23 +15,24 @@ """ Class implementing a reader object for user agent data files. """ + def __init__(self): """ Constructor """ super().__init__() - + def read(self, fileNameOrDevice): """ Public method to read a user agent file. - + @param fileNameOrDevice name of the file to read (string) or reference to the device to read (QIODevice) @return dictionary with user agent data (host as key, agent string as value) """ self.__agents = {} - + if isinstance(fileNameOrDevice, QIODevice): self.setDevice(fileNameOrDevice) else: @@ -40,30 +41,30 @@ return self.__agents f.open(QIODevice.OpenModeFlag.ReadOnly) self.setDevice(f) - + while not self.atEnd(): self.readNext() if self.isStartElement(): version = self.attributes().value("version") - if ( - self.name() == "UserAgents" and - (not version or version == "1.0") - ): + if self.name() == "UserAgents" and (not version or version == "1.0"): self.__readUserAgents() else: - self.raiseError(QCoreApplication.translate( - "UserAgentReader", - "The file is not a UserAgents version 1.0 file.")) - + self.raiseError( + QCoreApplication.translate( + "UserAgentReader", + "The file is not a UserAgents version 1.0 file.", + ) + ) + return self.__agents - + def __readUserAgents(self): """ Private method to read the user agents data. """ if not self.isStartElement() and self.name() != "UserAgents": return - + while not self.atEnd(): self.readNext() if self.isEndElement(): @@ -71,7 +72,7 @@ continue else: break - + if self.isStartElement(): if self.name() == "UserAgent": attributes = self.attributes() @@ -80,18 +81,18 @@ self.__agents[host] = agent else: self.__skipUnknownElement() - + def __skipUnknownElement(self): """ Private method to skip over all unknown elements. """ if not self.isStartElement(): return - + while not self.atEnd(): self.readNext() if self.isEndElement(): break - + if self.isStartElement(): self.__skipUnknownElement()