我正在尝试使用 python 运行 CLI 脚本,但由于特殊字符而遇到问题。所以如果我运行这个硬编码它就可以了。将“Innjsø”层写入名为“innsjo”的数据库,作为表名。
ogr2ogr -f "PostgreSQL" PG:"host=localhost user=postgres password=postgres "C:\path\GML.gml" Innsjø -nln innsjo
但是,我尝试以编程方式运行此程序,但遇到了特殊字符的问题。
command = [
"C:\\Program Files\\QGIS 2.18\\bin\\ogr2ogr.exe",
"-f",
"PostgreSQL",
"PG:host=localhost user=postgres password=postgres
loadfile,
gml_layer_name,
"-nln", set_table_name
]
subprocess.check_call(command)
如果变量 layer_name 包含特殊字符,我会收到此错误。仅使用拉丁字符的图层可以正常工作。
ERROR 1: Couldn't fetch requested layer 'Innsj°'!
我无法控制 GML 文件中的图层名称。如何使用名称包含特殊字符的 python 运行 CLI 脚本?