Merge pull request 'Qt5 et Qt6 Compatible' (#4) from tlaveille/plugin_gn_tools:master into master
Reviewed-on: #4
This commit is contained in:
commit
9bd9a9ca56
@ -19,16 +19,16 @@ deprecated=False
|
|||||||
experimental=True
|
experimental=True
|
||||||
plugin_dependencies=
|
plugin_dependencies=
|
||||||
qgisMinimumVersion=3.30
|
qgisMinimumVersion=3.30
|
||||||
qgisMaximumVersion=3.99
|
qgisMaximumVersion=4.99
|
||||||
supportsQt6=True
|
supportsQt6=True
|
||||||
|
|
||||||
# versioning
|
# versioning
|
||||||
version=0.1.0
|
version=0.1.1
|
||||||
changelog=
|
changelog=
|
||||||
|
|
||||||
|
|
||||||
[service]
|
[service]
|
||||||
domain_name=https://geonature.cen-isere.fr/geonature
|
domain_name=https://geonature.cenra-outils.org/geonature
|
||||||
biodiv_aura=https://donnees.biodiversite-auvergne-rhone-alpes.fr
|
biodiv_aura=https://donnees.biodiversite-auvergne-rhone-alpes.fr
|
||||||
|
|
||||||
[ref_taxon]
|
[ref_taxon]
|
||||||
|
|||||||
7
gn_tools/plugin_main.py
Executable file → Normal file
7
gn_tools/plugin_main.py
Executable file → Normal file
@ -24,7 +24,7 @@ from qgis.PyQt.QtCore import QCoreApplication, QLocale, QTranslator, QUrl
|
|||||||
from qgis.PyQt.QtGui import QDesktopServices, QIcon
|
from qgis.PyQt.QtGui import QDesktopServices, QIcon
|
||||||
from qgis.PyQt.QtWidgets import QAction, QMessageBox
|
from qgis.PyQt.QtWidgets import QAction, QMessageBox
|
||||||
from qgis.PyQt.QtNetwork import QNetworkAccessManager
|
from qgis.PyQt.QtNetwork import QNetworkAccessManager
|
||||||
from PyQt5.QtWidgets import QCheckBox, QApplication
|
from qgis.PyQt.QtWidgets import QCheckBox, QApplication
|
||||||
|
|
||||||
# project
|
# project
|
||||||
from gn_tools.__about__ import (
|
from gn_tools.__about__ import (
|
||||||
@ -388,12 +388,13 @@ class GnToolsPlugin:
|
|||||||
|
|
||||||
self.dlg.show()
|
self.dlg.show()
|
||||||
# Run the dialog event loop
|
# Run the dialog event loop
|
||||||
result = self.dlg.exec_()
|
result = self.dlg.exec()
|
||||||
if result:
|
if result:
|
||||||
# Do something useful here - delete the line containing pass and
|
# Do something useful here - delete the line containing pass and
|
||||||
# substitute with you
|
# substitute with you
|
||||||
print('ok')
|
print('ok')
|
||||||
print(result)
|
print(result)
|
||||||
|
self.dlg.activateWindow()
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
@ -469,7 +470,7 @@ class GnToolsPlugin:
|
|||||||
|
|
||||||
def activate_window(self):
|
def activate_window(self):
|
||||||
# Put the dialog on top once the rectangle is drawn
|
# Put the dialog on top once the rectangle is drawn
|
||||||
# self.activateWindow()
|
self.dlg.activateWindow()
|
||||||
self.canvas.unsetMapTool(self.move_tool)
|
self.canvas.unsetMapTool(self.move_tool)
|
||||||
self.check_valid()
|
self.check_valid()
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
# Import PyQt libs
|
# Import PyQt libs
|
||||||
from PyQt5.QtCore import (
|
from qgis.PyQt.QtCore import (
|
||||||
pyqtSignal,
|
pyqtSignal,
|
||||||
Qt,
|
Qt,
|
||||||
)
|
)
|
||||||
from PyQt5.QtGui import QColor
|
from qgis.PyQt.QtGui import QColor
|
||||||
# Import PyQgis libs
|
# Import PyQgis libs
|
||||||
from qgis.core import (
|
from qgis.core import (
|
||||||
QgsRectangle,
|
QgsRectangle,
|
||||||
@ -42,7 +42,7 @@ class RectangleFeatureTool(QgsMapTool):
|
|||||||
|
|
||||||
# Mouse button pressed.
|
# Mouse button pressed.
|
||||||
def canvasPressEvent(self, event: QgsMapMouseEvent):
|
def canvasPressEvent(self, event: QgsMapMouseEvent):
|
||||||
if event.button() == Qt.LeftButton:
|
if event.button() == Qt.MouseButton(0x00000001):
|
||||||
self.start_point = self.toMapCoordinates(event.pos())
|
self.start_point = self.toMapCoordinates(event.pos())
|
||||||
self.end_point = self.start_point
|
self.end_point = self.start_point
|
||||||
self.is_left_button_pressed = True
|
self.is_left_button_pressed = True
|
||||||
@ -58,7 +58,7 @@ class RectangleFeatureTool(QgsMapTool):
|
|||||||
# The mouse button is released.
|
# The mouse button is released.
|
||||||
def canvasReleaseEvent(self, event: QgsMapMouseEvent):
|
def canvasReleaseEvent(self, event: QgsMapMouseEvent):
|
||||||
# if the left mouse button was released
|
# if the left mouse button was released
|
||||||
if event.button() == Qt.LeftButton:
|
if event.button() == Qt.MouseButton(0x00000001):
|
||||||
if event.type() == 3:
|
if event.type() == 3:
|
||||||
# get the rectangle created from the click point and
|
# get the rectangle created from the click point and
|
||||||
# left mouse button release points
|
# left mouse button release points
|
||||||
|
|||||||
@ -77,15 +77,15 @@ class GetFilterFromAPI(QDialog):
|
|||||||
self._pending_downloads -= 1
|
self._pending_downloads -= 1
|
||||||
# If reply is an error or reply is a redirection, login is not accepted
|
# If reply is an error or reply is a redirection, login is not accepted
|
||||||
print(reply.attribute(
|
print(reply.attribute(
|
||||||
QNetworkRequest.HttpStatusCodeAttribute
|
QNetworkRequest.Attribute(0)
|
||||||
))
|
))
|
||||||
print(reply.error(),' : ',reply.dtype)
|
print(reply.error(),' : ',reply.dtype)
|
||||||
self.network_manager.cookieStatus = reply.attribute(
|
self.network_manager.cookieStatus = reply.attribute(
|
||||||
QNetworkRequest.HttpStatusCodeAttribute
|
QNetworkRequest.Attribute(0)
|
||||||
)
|
)
|
||||||
QApplication.restoreOverrideCursor()
|
QApplication.restoreOverrideCursor()
|
||||||
if (
|
if (
|
||||||
reply.error() != QNetworkReply.NoError
|
reply.error() != QNetworkReply.NetworkError(0)
|
||||||
or self.network_manager.cookieStatus != 200
|
or self.network_manager.cookieStatus != 200
|
||||||
):
|
):
|
||||||
# Error code 299 means the logins are invalid
|
# Error code 299 means the logins are invalid
|
||||||
@ -126,7 +126,7 @@ class GetFilterFromAPI(QDialog):
|
|||||||
|
|
||||||
def get_jdd(self):
|
def get_jdd(self):
|
||||||
self._pending_downloads += 1
|
self._pending_downloads += 1
|
||||||
QApplication.setOverrideCursor(Qt.WaitCursor)
|
QApplication.setOverrideCursor(Qt.CursorShape(3))
|
||||||
|
|
||||||
self.dlg.jdd_box.setEnabled(True)
|
self.dlg.jdd_box.setEnabled(True)
|
||||||
url_api = self.domain_url + 'api/meta/datasets?'
|
url_api = self.domain_url + 'api/meta/datasets?'
|
||||||
@ -142,7 +142,7 @@ class GetFilterFromAPI(QDialog):
|
|||||||
|
|
||||||
def get_phylog(self):
|
def get_phylog(self):
|
||||||
self._pending_downloads += 2
|
self._pending_downloads += 2
|
||||||
QApplication.setOverrideCursor(Qt.WaitCursor)
|
QApplication.setOverrideCursor(Qt.CursorShape(3))
|
||||||
|
|
||||||
self.dlg.regne.setEnabled(True)
|
self.dlg.regne.setEnabled(True)
|
||||||
if self.parent.src_name == 'GéoNature':
|
if self.parent.src_name == 'GéoNature':
|
||||||
@ -154,7 +154,7 @@ class GetFilterFromAPI(QDialog):
|
|||||||
|
|
||||||
|
|
||||||
def get_taxon_tree(self):
|
def get_taxon_tree(self):
|
||||||
QApplication.setOverrideCursor(Qt.WaitCursor)
|
QApplication.setOverrideCursor(Qt.CursorShape(3))
|
||||||
|
|
||||||
if self.parent.src_name == 'GéoNature':
|
if self.parent.src_name == 'GéoNature':
|
||||||
url_api = self.tax_url + 'api/synthese/taxons_tree'
|
url_api = self.tax_url + 'api/synthese/taxons_tree'
|
||||||
@ -170,8 +170,8 @@ class GetFilterFromAPI(QDialog):
|
|||||||
def send_request(self,url,type_request,type_param):
|
def send_request(self,url,type_request,type_param):
|
||||||
print(url)
|
print(url)
|
||||||
request = QNetworkRequest(url)
|
request = QNetworkRequest(url)
|
||||||
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
request.setHeader(QNetworkRequest.KnownHeaders(0), "application/json")
|
||||||
request.setHeader(QNetworkRequest.CookieHeader, self.cookie)
|
request.setHeader(QNetworkRequest.KnownHeaders(4), self.cookie)
|
||||||
if type_request == 'GET':
|
if type_request == 'GET':
|
||||||
reply = self.network_manager.get(request)
|
reply = self.network_manager.get(request)
|
||||||
elif type_request == 'POST':
|
elif type_request == 'POST':
|
||||||
|
|||||||
@ -2,10 +2,10 @@
|
|||||||
import json
|
import json
|
||||||
import time
|
import time
|
||||||
# Import PyQt libs
|
# Import PyQt libs
|
||||||
from PyQt5.QtCore import QObject, pyqtSignal, QUrl, Qt, QVariant
|
from qgis.PyQt.QtCore import QObject, pyqtSignal, QUrl, Qt, QVariant
|
||||||
from PyQt5.QtGui import QColor
|
from qgis.PyQt.QtGui import QColor
|
||||||
from PyQt5.QtNetwork import QNetworkRequest, QNetworkReply
|
from qgis.PyQt.QtNetwork import QNetworkRequest, QNetworkReply
|
||||||
from PyQt5.QtWidgets import QDialog, QPushButton, QApplication, QVBoxLayout, QHBoxLayout, QButtonGroup, QCheckBox, QLabel
|
from qgis.PyQt.QtWidgets import QDialog, QPushButton, QApplication, QVBoxLayout, QHBoxLayout, QButtonGroup, QCheckBox, QLabel
|
||||||
# Import PyQgis libs
|
# Import PyQgis libs
|
||||||
from qgis.utils import iface
|
from qgis.utils import iface
|
||||||
from qgis.core import QgsProject, QgsFeature, QgsDataSourceUri, QgsRectangle, QgsNetworkAccessManager, QgsVectorLayer, QgsPointXY, QgsWkbTypes, QgsMapLayerProxyModel, QgsGeometry, QgsCoordinateReferenceSystem, QgsCoordinateTransform, QgsField
|
from qgis.core import QgsProject, QgsFeature, QgsDataSourceUri, QgsRectangle, QgsNetworkAccessManager, QgsVectorLayer, QgsPointXY, QgsWkbTypes, QgsMapLayerProxyModel, QgsGeometry, QgsCoordinateReferenceSystem, QgsCoordinateTransform, QgsField
|
||||||
@ -60,7 +60,7 @@ class GetTaxrefId(QObject):
|
|||||||
url = "https://api.checklistbank.org/nameusage/search?content=SCIENTIFIC_NAME&datasetKey=2008&facet=datasetKey&facet=rank&facet=issue&facet=status&facet=nomStatus&facet=nameType&facet=field&facet=authorship&facet=authorshipYear&facet=extinct&facet=environment&facet=origin&limit=50&offset=0&q={nom}&rank={rank}&type=PREFIX".format(nom=nom.split("(")[0], rank=rank.lower())
|
url = "https://api.checklistbank.org/nameusage/search?content=SCIENTIFIC_NAME&datasetKey=2008&facet=datasetKey&facet=rank&facet=issue&facet=status&facet=nomStatus&facet=nameType&facet=field&facet=authorship&facet=authorshipYear&facet=extinct&facet=environment&facet=origin&limit=50&offset=0&q={nom}&rank={rank}&type=PREFIX".format(nom=nom.split("(")[0], rank=rank.lower())
|
||||||
print(url)
|
print(url)
|
||||||
request = QNetworkRequest(QUrl(url))
|
request = QNetworkRequest(QUrl(url))
|
||||||
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
request.setHeader(QNetworkRequest.KnownHeaders(0), "application/json")
|
||||||
reply = self.network_manager.get(request)
|
reply = self.network_manager.get(request)
|
||||||
reply.finished.connect(lambda: self.handle_finished(reply, feature_id))
|
reply.finished.connect(lambda: self.handle_finished(reply, feature_id))
|
||||||
self._iterate_names += 1
|
self._iterate_names += 1
|
||||||
@ -68,7 +68,7 @@ class GetTaxrefId(QObject):
|
|||||||
|
|
||||||
def handle_finished(self, reply, feature_id):
|
def handle_finished(self, reply, feature_id):
|
||||||
self._pending_downloads -= 1
|
self._pending_downloads -= 1
|
||||||
if reply.error() != QNetworkReply.NoError:
|
if reply.error() != QNetworkReply.NetworkError(0):
|
||||||
print(f"code: {reply.error()} message: {reply.errorString()}")
|
print(f"code: {reply.error()} message: {reply.errorString()}")
|
||||||
if reply.error() == 403:
|
if reply.error() == 403:
|
||||||
print("Service down")
|
print("Service down")
|
||||||
@ -146,14 +146,14 @@ class ImportDataGbif(QObject):
|
|||||||
self.nb_request = 1
|
self.nb_request = 1
|
||||||
print(url)
|
print(url)
|
||||||
request = QNetworkRequest(url)
|
request = QNetworkRequest(url)
|
||||||
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
request.setHeader(QNetworkRequest.KnownHeaders(0), "application/json")
|
||||||
reply = self.network_manager.get(request)
|
reply = self.network_manager.get(request)
|
||||||
reply.finished.connect(lambda: self.handle_finished(reply))
|
reply.finished.connect(lambda: self.handle_finished(reply))
|
||||||
self._pending_downloads += 1
|
self._pending_downloads += 1
|
||||||
|
|
||||||
def handle_finished(self, reply):
|
def handle_finished(self, reply):
|
||||||
self._pending_downloads -= 1
|
self._pending_downloads -= 1
|
||||||
if reply.error() != QNetworkReply.NoError:
|
if reply.error() != QNetworkReply.NetworkError(0):
|
||||||
print(f"code: {reply.error()} message: {reply.errorString()}")
|
print(f"code: {reply.error()} message: {reply.errorString()}")
|
||||||
if reply.error() == 403:
|
if reply.error() == 403:
|
||||||
print("Service down")
|
print("Service down")
|
||||||
|
|||||||
@ -8,8 +8,8 @@ from qgis.PyQt.QtCore import QByteArray, QJsonDocument, QObject, QUrl, pyqtSigna
|
|||||||
from qgis.PyQt.QtNetwork import QNetworkReply, QNetworkRequest
|
from qgis.PyQt.QtNetwork import QNetworkReply, QNetworkRequest
|
||||||
from qgis.PyQt.QtWidgets import QAction, QMessageBox, QDialog
|
from qgis.PyQt.QtWidgets import QAction, QMessageBox, QDialog
|
||||||
|
|
||||||
from PyQt5.QtCore import Qt
|
from qgis.PyQt.QtCore import Qt
|
||||||
from PyQt5.QtWidgets import QApplication
|
from qgis.PyQt.QtWidgets import QApplication
|
||||||
# from PyQt6.QtCore import Qt
|
# from PyQt6.QtCore import Qt
|
||||||
# from PyQt6.QtWidgets import QApplication
|
# from PyQt6.QtWidgets import QApplication
|
||||||
|
|
||||||
@ -42,7 +42,7 @@ class GetLogin(QDialog):
|
|||||||
# self.total_zh = 0
|
# self.total_zh = 0
|
||||||
|
|
||||||
# PyQt5 - Version
|
# PyQt5 - Version
|
||||||
QApplication.setOverrideCursor(Qt.WaitCursor)
|
QApplication.setOverrideCursor(Qt.CursorShape(3))
|
||||||
# PyQt6 - Version
|
# PyQt6 - Version
|
||||||
# QApplication.setOverrideCursor(Qt.CursorShape.WaitCursor)
|
# QApplication.setOverrideCursor(Qt.CursorShape.WaitCursor)
|
||||||
self._pending_downloads = 0
|
self._pending_downloads = 0
|
||||||
@ -57,14 +57,14 @@ class GetLogin(QDialog):
|
|||||||
QApplication.restoreOverrideCursor()
|
QApplication.restoreOverrideCursor()
|
||||||
# If reply is an error or reply is a redirection, login is not accepted
|
# If reply is an error or reply is a redirection, login is not accepted
|
||||||
print(reply.attribute(
|
print(reply.attribute(
|
||||||
QNetworkRequest.HttpStatusCodeAttribute
|
QNetworkRequest.Attribute(0)
|
||||||
))
|
))
|
||||||
print('Login : ',reply.error())
|
print('Login : ',reply.error())
|
||||||
self.network_manager.cookieStatus = reply.attribute(
|
self.network_manager.cookieStatus = reply.attribute(
|
||||||
QNetworkRequest.HttpStatusCodeAttribute
|
QNetworkRequest.Attribute(0)
|
||||||
)
|
)
|
||||||
if (
|
if (
|
||||||
reply.error() != QNetworkReply.NoError
|
reply.error() != QNetworkReply.NetworkError(0)
|
||||||
or self.network_manager.cookieStatus != 200
|
or self.network_manager.cookieStatus != 200
|
||||||
):
|
):
|
||||||
# Error code 299 means the logins are invalid
|
# Error code 299 means the logins are invalid
|
||||||
@ -98,7 +98,7 @@ class GetLogin(QDialog):
|
|||||||
else:
|
else:
|
||||||
self.cookies = self.network_manager.cookieJar()
|
self.cookies = self.network_manager.cookieJar()
|
||||||
self.is_connect.setText("Good Job !")
|
self.is_connect.setText("Good Job !")
|
||||||
|
QApplication.setOverrideCursor(Qt.CursorShape(0))
|
||||||
# If the authenfication configuration already exists,
|
# If the authenfication configuration already exists,
|
||||||
# modify it with the new values
|
# modify it with the new values
|
||||||
# self.manager_config.setConfigMap(
|
# self.manager_config.setConfigMap(
|
||||||
@ -156,7 +156,7 @@ class GetLogin(QDialog):
|
|||||||
}
|
}
|
||||||
print(url)
|
print(url)
|
||||||
request = QNetworkRequest(url)
|
request = QNetworkRequest(url)
|
||||||
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
request.setHeader(QNetworkRequest.KnownHeaders(0), "application/json")
|
||||||
document = QJsonDocument(data_json)
|
document = QJsonDocument(data_json)
|
||||||
print(document.toJson())
|
print(document.toJson())
|
||||||
reply = self.network_manager.post(request, document.toJson())
|
reply = self.network_manager.post(request, document.toJson())
|
||||||
|
|||||||
@ -15,7 +15,7 @@ from qgis.PyQt.QtCore import (
|
|||||||
pyqtSignal,
|
pyqtSignal,
|
||||||
QJsonDocument,
|
QJsonDocument,
|
||||||
Qt,
|
Qt,
|
||||||
QTextCodec
|
# QTextCodec
|
||||||
)
|
)
|
||||||
from qgis.PyQt.QtNetwork import QNetworkReply, QNetworkRequest
|
from qgis.PyQt.QtNetwork import QNetworkReply, QNetworkRequest
|
||||||
from qgis.PyQt.QtWidgets import (
|
from qgis.PyQt.QtWidgets import (
|
||||||
@ -294,7 +294,7 @@ class PivotStatus(QDialog):
|
|||||||
self.cd_nom = cd_nom
|
self.cd_nom = cd_nom
|
||||||
self.url_api = self.domain_url + __api_cd_sta__
|
self.url_api = self.domain_url + __api_cd_sta__
|
||||||
|
|
||||||
# QApplication.setOverrideCursor(Qt.WaitCursor)
|
# QApplication.setOverrideCursor(Qt.CursorShape(3))
|
||||||
self.multi_dep = True
|
self.multi_dep = True
|
||||||
|
|
||||||
self.cookie = (self.network_manager.cookieJar()
|
self.cookie = (self.network_manager.cookieJar()
|
||||||
@ -325,17 +325,17 @@ class PivotStatus(QDialog):
|
|||||||
+ ','.join(map(str,cd_nom))
|
+ ','.join(map(str,cd_nom))
|
||||||
)
|
)
|
||||||
request = QNetworkRequest(url)
|
request = QNetworkRequest(url)
|
||||||
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
request.setHeader(QNetworkRequest.KnownHeaders(0), "application/json")
|
||||||
request.setHeader(QNetworkRequest.CookieHeader, self.cookie)
|
request.setHeader(QNetworkRequest.KnownHeaders(4), self.cookie)
|
||||||
reply = self.network_manager.get(request)
|
reply = self.network_manager.get(request)
|
||||||
reply.finished.connect(lambda: self.import_finished(reply))
|
reply.finished.connect(lambda: self.import_finished(reply))
|
||||||
|
|
||||||
|
|
||||||
def import_finished(self, reply):
|
def import_finished(self, reply):
|
||||||
self._pending_downloads -= 1
|
self._pending_downloads -= 1
|
||||||
print(reply.attribute(QNetworkRequest.HttpStatusCodeAttribute))
|
print(reply.attribute(QNetworkRequest.Attribute(0)))
|
||||||
|
|
||||||
if reply.attribute(QNetworkRequest.HttpStatusCodeAttribute) != 200:
|
if reply.attribute(QNetworkRequest.Attribute(0)) != 200:
|
||||||
print(f"code: {reply.error()} message: {reply.errorString()}")
|
print(f"code: {reply.error()} message: {reply.errorString()}")
|
||||||
else:
|
else:
|
||||||
data_request = reply.readAll().data().decode()
|
data_request = reply.readAll().data().decode()
|
||||||
@ -449,9 +449,9 @@ class PivotStatus(QDialog):
|
|||||||
layername = data['layer_name']
|
layername = data['layer_name']
|
||||||
|
|
||||||
fcString = json.dumps(data)
|
fcString = json.dumps(data)
|
||||||
codec = QTextCodec.codecForName("UTF-8")
|
# codec = QTextCodec.codecForName("UTF-8")
|
||||||
fields = QgsJsonUtils.stringToFields(fcString, codec)
|
fields = QgsJsonUtils.stringToFields(fcString)
|
||||||
feats = QgsJsonUtils.stringToFeatureList(fcString, fields, codec)
|
feats = QgsJsonUtils.stringToFeatureList(fcString, fields)
|
||||||
|
|
||||||
vl = QgsVectorLayer(geom_type, layername, "memory")
|
vl = QgsVectorLayer(geom_type, layername, "memory")
|
||||||
if vl.sourceCrs() != self.layer_crs:
|
if vl.sourceCrs() != self.layer_crs:
|
||||||
|
|||||||
@ -17,7 +17,7 @@ from qgis.PyQt.QtCore import (
|
|||||||
QObject,
|
QObject,
|
||||||
QUrl,
|
QUrl,
|
||||||
pyqtSignal,
|
pyqtSignal,
|
||||||
QTextCodec,
|
# QTextCodec,
|
||||||
Qt
|
Qt
|
||||||
)
|
)
|
||||||
from qgis.PyQt.QtNetwork import QNetworkReply, QNetworkRequest
|
from qgis.PyQt.QtNetwork import QNetworkReply, QNetworkRequest
|
||||||
@ -68,7 +68,8 @@ class ParamWidget(QDialog):
|
|||||||
self.print_change
|
self.print_change
|
||||||
)
|
)
|
||||||
else :
|
else :
|
||||||
QApplication.setOverrideCursor(Qt.WaitCursor)
|
QApplication.setOverrideCursor(Qt.CursorShape(3))
|
||||||
|
print(network_manager.cookieJar().cookiesForUrl(QUrl(self.domain_url)))
|
||||||
self.cookie = (network_manager.cookieJar()
|
self.cookie = (network_manager.cookieJar()
|
||||||
.cookiesForUrl(QUrl(self.domain_url))[0]
|
.cookiesForUrl(QUrl(self.domain_url))[0]
|
||||||
)
|
)
|
||||||
@ -104,9 +105,9 @@ class ParamWidget(QDialog):
|
|||||||
def import_finished(self, reply):
|
def import_finished(self, reply):
|
||||||
self._pending_downloads -= 1
|
self._pending_downloads -= 1
|
||||||
QApplication.restoreOverrideCursor()
|
QApplication.restoreOverrideCursor()
|
||||||
print(reply.attribute(QNetworkRequest.HttpStatusCodeAttribute))
|
print(reply.attribute(QNetworkRequest.Attribute(0)))
|
||||||
|
|
||||||
if reply.attribute(QNetworkRequest.HttpStatusCodeAttribute) != 200:
|
if reply.attribute(QNetworkRequest.Attribute(0)) != 200:
|
||||||
print(f"code: {reply.error()} message: {reply.errorString()}")
|
print(f"code: {reply.error()} message: {reply.errorString()}")
|
||||||
else:
|
else:
|
||||||
self.lst_exp = ['Synthèse taxons']
|
self.lst_exp = ['Synthèse taxons']
|
||||||
@ -146,8 +147,8 @@ class ParamWidget(QDialog):
|
|||||||
|
|
||||||
# Define request properties (cookie, header)
|
# Define request properties (cookie, header)
|
||||||
request = QNetworkRequest(url)
|
request = QNetworkRequest(url)
|
||||||
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
request.setHeader(QNetworkRequest.KnownHeaders(0), "application/json")
|
||||||
request.setHeader(QNetworkRequest.CookieHeader, self.cookie)
|
request.setHeader(QNetworkRequest.KnownHeaders(4), self.cookie)
|
||||||
|
|
||||||
if apiFilter:
|
if apiFilter:
|
||||||
doc = QJsonDocument(self.json_filter)
|
doc = QJsonDocument(self.json_filter)
|
||||||
@ -194,7 +195,7 @@ class LoadingImport(QDialog):
|
|||||||
# self.json_filter = {}
|
# self.json_filter = {}
|
||||||
# self.total_zh = 0
|
# self.total_zh = 0
|
||||||
|
|
||||||
QApplication.setOverrideCursor(Qt.WaitCursor)
|
QApplication.setOverrideCursor(Qt.CursorShape(3))
|
||||||
self._pending_downloads = 0
|
self._pending_downloads = 0
|
||||||
self.run()
|
self.run()
|
||||||
|
|
||||||
@ -283,10 +284,10 @@ class LoadingImport(QDialog):
|
|||||||
|
|
||||||
# Define request properties (cookie, header)
|
# Define request properties (cookie, header)
|
||||||
request = QNetworkRequest(url)
|
request = QNetworkRequest(url)
|
||||||
request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
|
request.setHeader(QNetworkRequest.KnownHeaders(0), "application/json")
|
||||||
|
|
||||||
if self.cookie:
|
if self.cookie:
|
||||||
request.setHeader(QNetworkRequest.CookieHeader, self.cookie)
|
request.setHeader(QNetworkRequest.KnownHeaders(4), self.cookie)
|
||||||
|
|
||||||
if 'Synthèse taxons' in self.source :
|
if 'Synthèse taxons' in self.source :
|
||||||
reply = self.network_manager.post(request,doc.toJson())
|
reply = self.network_manager.post(request,doc.toJson())
|
||||||
@ -297,9 +298,9 @@ class LoadingImport(QDialog):
|
|||||||
|
|
||||||
def loading_finished(self,reply):
|
def loading_finished(self,reply):
|
||||||
self._pending_downloads -= 1
|
self._pending_downloads -= 1
|
||||||
print(reply.attribute(QNetworkRequest.HttpStatusCodeAttribute))
|
print(reply.attribute(QNetworkRequest.Attribute(0)))
|
||||||
|
|
||||||
if reply.attribute(QNetworkRequest.HttpStatusCodeAttribute) != 200:
|
if reply.attribute(QNetworkRequest.Attribute(0)) != 200:
|
||||||
print(f"code: {reply.error()} message: {reply.errorString()}")
|
print(f"code: {reply.error()} message: {reply.errorString()}")
|
||||||
else:
|
else:
|
||||||
data_request = reply.readAll().data().decode()
|
data_request = reply.readAll().data().decode()
|
||||||
@ -399,9 +400,8 @@ class LoadingImport(QDialog):
|
|||||||
|
|
||||||
fcString = json.dumps(data)
|
fcString = json.dumps(data)
|
||||||
|
|
||||||
codec = QTextCodec.codecForName("UTF-8")
|
fields = QgsJsonUtils.stringToFields(fcString)
|
||||||
fields = QgsJsonUtils.stringToFields(fcString, codec)
|
feats = QgsJsonUtils.stringToFeatureList(fcString, fields)
|
||||||
feats = QgsJsonUtils.stringToFeatureList(fcString, fields, codec)
|
|
||||||
|
|
||||||
if self.api:
|
if self.api:
|
||||||
crs_api = QgsCoordinateReferenceSystem(self.api['geometry_srid'])
|
crs_api = QgsCoordinateReferenceSystem(self.api['geometry_srid'])
|
||||||
|
|||||||
0
gn_tools/toolbelt/log_handler.py
Executable file → Normal file
0
gn_tools/toolbelt/log_handler.py
Executable file → Normal file
0
gn_tools/toolbelt/preferences.py
Executable file → Normal file
0
gn_tools/toolbelt/preferences.py
Executable file → Normal file
Loading…
x
Reference in New Issue
Block a user