Ошибка при выполнении сценария python qgis

artemiziy

Активный участник

Сообщения: 115
Зарегистрирован: 29 апр 2008, 11:08
Проекты: 1/1

Репутация: 7

QGIS. Ошибка при выполнении сценария Python

Всем добрый день,

При попытке настроить в QGIS «Анализ данных» — «Параметры…» возникает следующее сообщение:

Код: Выделить всё

Ошибка при выполнении сценария Python: 

TypeError: function takes exactly 5 arguments (1 given) 
Traceback (most recent call last):
  File "C:/OSGEO4~1/apps/qgis/./python/pluginsprocessingguiConfigDialog.py", line 150, in accept
    self.tr('Wrong value for parameter "%s":nn%s' % (setting.description, unicode(e))))
TypeError: function takes exactly 5 arguments (1 given)


Версия Python: 2.7.5 (default, May 15 2013, 22:44:16) [MSC v.1500 64 bit (AMD64)] 
Версия: 2.14.1-Essen Essen, ea85bef 

Расположение Python:
C:/OSGEO4~1/apps/qgis/./python/pluginsprocessing
C:/OSGEO4~1/apps/qgis/./python
C:/Users/nikartem/.qgis2/python
C:/Users/nikartem/.qgis2/python/plugins
C:/OSGEO4~1/apps/qgis/./python/plugins
C:OSGEO4~1appsPython27libsite-packagesmatplotlib-1.3.1-py2.7-win-amd64.egg
C:OSGEO4~1appsPython27libsite-packagesnose-1.3.3-py2.7.egg
C:OSGEO4~1appsPython27libsite-packagestornado-4.0.1-py2.7-win-amd64.egg
C:OSGEO4~1appsPython27libsite-packagesbackports.ssl_match_hostname-3.4.0.2-py2.7.egg
C:OSGEO4~1appsPython27libsite-packagescertifi-14.05.14-py2.7.egg
c:osgeo4~1appspython27libsite-packagespython_dateutil-2.1-py2.7.egg
C:OSGEO4~1binpython27.zip
C:OSGEO4~1appsPython27DLLs
C:OSGEO4~1appsPython27lib
C:OSGEO4~1appsPython27libplat-win
C:OSGEO4~1appsPython27liblib-tk
C:OSGEO4~1bin
C:OSGEO4~1appsPython27
C:OSGEO4~1appsPython27libsite-packages
C:OSGEO4~1appsPython27libsite-packagesPIL
C:OSGEO4~1appsPython27libsite-packagesjinja2-2.7.2-py2.7.egg
C:OSGEO4~1appsPython27libsite-packagesmarkupsafe-0.23-py2.7-win-amd64.egg
C:OSGEO4~1appsPython27libsite-packagespytz-2012j-py2.7.egg
C:OSGEO4~1appsPython27libsite-packageswin32
C:OSGEO4~1appsPython27libsite-packageswin32lib
C:OSGEO4~1appsPython27libsite-packagesPythonwin
C:OSGEO4~1appsPython27libsite-packageswx-2.8-msw-unicode
C:/Users/nikartem/.qgis2//python
C:OSGEO4~1appsqgispythonpluginsfToolstools

Версия QGIS — 2.14.1-Essen, поставлена через OSGeo4W64

подскажите, пожалуйста, проблема в каких-то настройках?


Даниил Белый

Новоприбывший

Сообщения: 5
Зарегистрирован: 19 ноя 2015, 12:38

Репутация: 0

Re: QGIS. Ошибка при выполнении сценария Python

Сообщение

Даниил Белый » 09 фев 2018, 16:15

Такая же ошибка и у меня выпадает и при тех же обстоятельствах.


drrrrr

Участник

Сообщения: 84
Зарегистрирован: 31 янв 2012, 10:51

Репутация: 50

Re: QGIS. Ошибка при выполнении сценария Python

Сообщение

drrrrr » 09 фев 2018, 17:01

Разбирался я с этой злосчастной ошибкой, причина — фиг догадаешься — в настройках grass проверяется наличие пути %OSGEO4W_ROOT%appsmsys. Создайте эту папку руками ну или установите пакет msys.


Аватара пользователя

Denis Rykov

Гуру

Сообщения: 3376
Зарегистрирован: 11 апр 2008, 21:09
Статьи: 33
Проекты: 9

Репутация: 529
Ваше звание: Author
Контактная информация:

Re: QGIS. Ошибка при выполнении сценария Python

Сообщение

Denis Rykov » 09 фев 2018, 20:52

Даниил Белый писал(а): ↑

09 фев 2018, 16:15

Такая же ошибка и у меня выпадает и при тех же обстоятельствах.

Может быть стоит обновить QGIS?

Spatial is now, more than ever, just another column- The Geometry Column.


Svettlana

Новоприбывший

Сообщения: 6
Зарегистрирован: 09 фев 2018, 10:39

Репутация: 0
Откуда: Симферополь

Re: QGIS. Ошибка при выполнении сценария Python

Сообщение

Svettlana » 12 фев 2018, 10:44

Добрый день! Помоги пожалуйста.
При Preprocessing Sentinel-2 где -то при 60% выполнения постоянно выпадает (независимо от версии QGIS или используемого компьютера):

Traceback (most recent call last):
File «C:/Users/Irina/.qgis2/python/pluginsSemiAutomaticClassificationPluginmaininterfacesentinelTab.py», line 164, in performSentinelConversion
self.sentinel2(cfg.ui.S2_label_86.text(), o)
File «C:/Users/Irina/.qgis2/python/pluginsSemiAutomaticClassificationPluginmaininterfacesentinelTab.py», line 249, in sentinel2
cfg.mx.msgErr38(outR)
File «C:/Users/Irina/.qgis2/python/pluginsSemiAutomaticClassificationPlugincoremessages.py», line 248, in msgErr38
self.msgBarError(cfg.QtGuiSCP.QApplication.translate(«semiautomaticclassificationplugin», «Error») + » [38]», cfg.QtGuiSCP.QApplication.translate(«semiautomaticclassificationplugin», «Unable to load raster » + path))
TypeError: function takes exactly 5 arguments (1 given)

Как решить эту проблему?


gamm

Гуру

Сообщения: 3939
Зарегистрирован: 15 окт 2010, 08:33

Репутация: 1030
Ваше звание: программист
Откуда: Казань

Re: QGIS. Ошибка при выполнении сценария Python

Сообщение

gamm » 12 фев 2018, 11:07

запустить в отладчике, или поставить отладочную печать в том месте, где не хватает параметров. Обычно ерунда какая-нибудь, типа русских букв в путях, или отсутствия какой-нибудь папки (которых у Сентиля хватает). Или пальчиком по коду поводить в этом месте, посмотреть, какие такие 5 аргументов в функцию должны попасть.


Даниил Белый

Новоприбывший

Сообщения: 5
Зарегистрирован: 19 ноя 2015, 12:38

Репутация: 0

Re: QGIS. Ошибка при выполнении сценария Python

Сообщение

Даниил Белый » 13 фев 2018, 18:20

drrrrr:
Разбирался я с этой злосчастной ошибкой, причина — фиг догадаешься — в настройках grass проверяется наличие пути %OSGEO4W_ROOT%appsmsys. Создайте эту папку руками ну или установите пакет msys.

Это помогло! Выражаю огромную благодарность!!! :D


Svettlana

Новоприбывший

Сообщения: 6
Зарегистрирован: 09 фев 2018, 10:39

Репутация: 0
Откуда: Симферополь

Re: QGIS. Ошибка при выполнении сценария Python

Сообщение

Svettlana » 13 фев 2018, 19:46

gamm писал(а): ↑

12 фев 2018, 11:07

Обычно ерунда какая-нибудь, типа русских букв в путях

Все получилось! Огромное спасибо!


Ошибка при выполнении сценария Python:

TypeError: ‘float’ object is not subscriptable
Traceback (most recent call last):
File «C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/pluginsqgis2webmaindialog.py», line 350, in saveMap
feedback=self.feedback)
File «C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/pluginsqgis2webmapboxWriter.py», line 104, in write
folder=dest_folder)
File «C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/pluginsqgis2webmapboxWriter.py», line 294, in writeMapbox
useOSMB, vtSources, layers)
File «C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/pluginsqgis2webmapboxLayerScripts.py», line 145, in writeVectorLayer
mblayers = getLayerStyle(layer)
File «C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/pluginsqgis2webmapboxStyleScripts.py», line 43, in getLayerStyle
mapboxStyle = bridgestyle.qgis.layerStyleAsMapbox(layer)
File «C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonpluginsgdrive_providerextlibsbridgestyleqgis_init_.py», line 41, in layerStyleAsMapbox
mbox, mbWarnings = mapboxgl.fromgeostyler.convert(geostyler)
File «C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonpluginsgdrive_providerextlibsbridgestylemapboxglfromgeostyler.py», line 10, in convert
layers = processLayer(geostyler)
File «C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonpluginsgdrive_providerextlibsbridgestylemapboxglfromgeostyler.py», line 31, in processLayer
layers = processRule(rule, layer[«name»])
File «C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonpluginsgdrive_providerextlibsbridgestylemapboxglfromgeostyler.py», line 47, in processRule
layers = [processSymbolizer(s) for s in rule[«symbolizers»]]
File «C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonpluginsgdrive_providerextlibsbridgestylemapboxglfromgeostyler.py», line 47, in
layers = [processSymbolizer(s) for s in rule[«symbolizers»]]
File «C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonpluginsgdrive_providerextlibsbridgestylemapboxglfromgeostyler.py», line 126, in processSymbolizer
symbolizer = _textSymbolizer(sl)
File «C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonpluginsgdrive_providerextlibsbridgestylemapboxglfromgeostyler.py», line 151, in _textSymbolizer
offsetx = convertExpression(offset[0])
TypeError: ‘float’ object is not subscriptable

Версия Python: 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)]
Версия: 3.6.3-Noosa Noosa, 0c5774c068

Расположение Python:
C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/pluginsindoor_schematic
C:/PROGRA1/QGIS31.6/apps/qgis/./python
C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python
C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/plugins
C:/PROGRA1/QGIS31.6/apps/qgis/./python/plugins
C:Program FilesQGIS 3.6binpython37.zip
C:PROGRA1QGIS31.6appsPython37DLLs
C:PROGRA1QGIS31.6appsPython37lib
C:Program FilesQGIS 3.6bin
C:PROGRA1QGIS31.6appsPython37
C:PROGRA1QGIS31.6appsPython37libsite-packages
C:PROGRA1QGIS31.6appsPython37libsite-packageswin32
C:PROGRA1QGIS31.6appsPython37libsite-packageswin32lib
C:PROGRA1QGIS31.6appsPython37libsite-packagesPythonwin
C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python
C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/pluginsgdrive_provider
C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonpluginsgdrive_providerextlibs
C:/Users/Dorogokuplya/AppData/Roaming/QGIS/QGIS3profilesdefault/python/pluginsqgis2web
C:UsersDorogokuplyaAppDataRoamingQGISQGIS3profilesdefaultpythonplugins
C:/Gis

I had installed QGIS 3.16.15 through OSGeo installation package and began receiving this error message when starting QGIS. I completely uninstalled using the OSGeo advanced installation package, and reinstalled QGIS 3.16.15 using the standalone installer. Now I am receiving the same message. I can’t interpret the error log successfully.

Edit: When I create a new user profile I receive no error messages. Should I be looking to clean out some saved profile directories?

enter image description here

enter image description here

enter image description here

asked Jan 11, 2022 at 11:03

Jiinglelocks's user avatar

The script DistantBear.py does have a syntax error. As it is in your processing directory which is tied a profile, you receive an error when starting QGIS with this profile (default).

Solutions:

  1. Fix the sytnax error in script DistantBear.py
  2. Delete script DistantBear.py if unused

answered Jan 11, 2022 at 11:50

steph's user avatar

stephsteph

264 bronze badges

Ср ноя 20, 2013 11:36 pm

Что с этим делать?

Чт ноя 21, 2013 9:25 am

У вас старые версии. Обновитесь, пожалуйста.
Сейчас актуальные версии:
QGIS 2.0.1 Dufour
openLand 0.2.6 от 14.11.2013
база данных 16 от 14.11.2013

Чт ноя 21, 2013 8:51 pm

Спасибо большое. теперь такая проблема: Настройка базы данных, создаю базовый проект через меню модуля openLand «Кадастр» / «Настройки» / «Данные» . По предложенному образцу из документа

http://openlandgis.ru/repository/Admin_Guide.pdf

заполняю закладку «Данные» и перезагружаю QGIS. Открываю новый созданный проект и получается ошибка. см. ниже. Получается я не правильно заполнила Данные. Что надо писать мне? помогите пожалуйста

Чт ноя 21, 2013 9:17 pm

Это не образец. Это всего лишь пример заполнения данных.

1. У Вас установлен сервер базы данных PostresSQL + PostGIS?
2. Вы создали базу данных по скриптам со страницы

http://openlandgis.ru/download

?
3. Для базы данных создали пользователя с паролем?

Если ответ «да» на все вопросы — тогда указывайте соответствующие имя пользователя и пароль, а не «sampleUserName» и «samplePass»

Если установка сервера БД и настройка вызывают затруднения — напишите мне на

biryuchkov@gmail.com

Думаю сможем решить все проблемы. :)

Чт ноя 21, 2013 9:21 pm

Спасибо. Все еще раз посмотрю и думаю что напишу еще Вам. Просто я самоучка в этой программе, решила попробывать межевой план участка сделать. Вот пытаюсь

Чт ноя 21, 2013 9:41 pm

Признаю, что система довольно сложная при установке и настройке. Поэтому готов всячески содействовать и помогать в этом. И денег не прошу :)
Только поймите меня правильно — мне проще на 40 минут через интернет подключиться к вашему компьютеру и всё установить и настроить самому, чем мы будем несколько дней вести оживленную переписку и обсуждать PostgreSQL, PostGIS, процедуры выполнения скриптов, особенности вашей операционной системы и т.д. и т.п.

Powered by phpBB © phpBB Group.

phpBB Mobile / SEO by Artodia.

I was fortunate enough to get in touch with the author of the book so I will share his response here:

I suspect I may know what the problem is…after looking at this
reader’s problems in more depth, I’ve discovered that something has
changed in newer versions of QGIS, and the example code no longer
works as it is written. In technical terms, it seems that you now
need to instantiate the QApplication object before making the call to
QgsApplication.initQgis() — the example program in the book
instantiates the QApplication object after calling
QgsApplication.initQgis(), which causes the program to crash. To fix
this, change the main() function to look like the following:

def main():
    """  Our main program.
    """
    app = QApplication(sys.argv)
    QgsApplication.setPrefixPath(os.environ['QGIS_PREFIX'],True)
    QgsApplication.initQgis()

    viewer = MapViewer("C:/folder/shapefile.shp")
    viewer.show()

    app.exec_()

    QgsApplication.exitQgis()

As you can see, I’ve moved the «app = QApplication(sys.argv)» line to the top.

Important Note: Make sure that forward slashes are used in viewer = MapViewer("C:/folder/shapefile.shp") — using a backslash will result in an error message stating that the shapefile is invalid.

I also thought it would be worth mentioning that none of the above fixes (comments on the question) were necessary. So, the script will work if the paths are defined as follows:

SET OSGEO4W_ROOT=C:OSGeo4W64
SET QGIS_PREFIX=%OSGEO4W_ROOT%appsqgis
SET PATH=%PATH%;%QGIS_PREFIX%bin
SET PYTHONPATH=%QGIS_PREFIX%python;%PYTHONPATH%

Then, the entire script looks like this:

import sys
import os
from qgis.core import *
from qgis.gui import *
from PyQt4.QtGui import *
from PyQt4.QtCore import Qt



#############################################################################


class MapViewer(QMainWindow):
    def __init__(self, shapefile):
        QMainWindow.__init__(self)
        self.setWindowTitle("Map Viewer")

        canvas = QgsMapCanvas()
        canvas.useImageToRender(False)
        canvas.setCanvasColor(Qt.white)
        canvas.show()

        layer = QgsVectorLayer(shapefile, "layer1", "ogr")
        if not layer.isValid():
            raise IOError("Invalid shapefile")

        QgsMapLayerRegistry.instance().addMapLayer(layer)
        canvas.setExtent(layer.extent())
        canvas.setLayerSet([QgsMapCanvasLayer(layer)])

        layout = QVBoxLayout()
        layout.addWidget(canvas)

        contents = QWidget()
        contents.setLayout(layout)
        self.setCentralWidget(contents)

#############################################################################


def main():
    """  Our main program.
    """
    app = QApplication(sys.argv)
    QgsApplication.setPrefixPath(os.environ['QGIS_PREFIX'],True)
    QgsApplication.initQgis()

    viewer = MapViewer("C:/folder/shapefile.shp")
    viewer.show()

    app.exec_()

    QgsApplication.exitQgis()

#############################################################################

if __name__ == "__main__":
    main()

Execute it in the OSGEO4W Shell using the following command:

python "C:script.py"

Lastly, note that at the time of this writing, the script works properly and launches a viewer showing the shapefile referenced, but returns a few errors in the shell that do not seem to be problematic:

ERROR: Opening of authentication db FAILED
ERROR: Unable to establish authentication database connection
ERROR: Auth db could not be created and opened
QSqlDatabasePrivate::database: unable to open database: "unable to open database file Error opening database"
ERROR: Opening of authentication db FAILED

Much thanks to the author Erik Westra for providing me with this solution.

  • Ошибка при выполнении синхронизации времени этот узел не удалось разрешить
  • Ошибка при выполнении сервера сценариев windows эта программа заблокирована групповой политикой
  • Ошибка при выполнении сервера сценариев windows параметр задан неверно
  • Ошибка при выполнении сверки итогов aqsi
  • Ошибка при выполнении рендеринга код ошибки 3