我正在尝试使用http://imdbpy.sourceforge.net/docs/README.sqldb.txt中记录的imdbpy2sql.py,但我遇到语法错误问题。目录。为简化起见,我将IMDb文件加载到“C:\ Users \ dom \ AppData \ Roaming \ Python \ Scripts”子目录中,例如:“C:\ Users \ dom \ AppData \ Roaming \ Python \ Scripts \ imdb”
然后我执行了: os.chdir(“C:\ Users \ dom \ AppData \ Roaming \ Python \ Scripts”)
我尝试使用PostgreSQL数据库,其中包含以下命令的变体并获得:
imdbpy2sql.py -d / imdb -u'postgres:// sid:asdf @ host / imdb'
文件“”,第1行 imdbpy2sql.py -d / imdb -u'postgres:// sid:asdf @ host / imdb' ^ SyntaxError:语法无效
在最后的努力中,我尝试了M $ SQL服务器并遇到了类似的错误:
>>> imdbpy2sql.py -d /imdb -u mssql://dom:@localhost/imdb
文件“”,第1行 imdbpy2sql.py -d / imdb -u mssql:// dom:@ localhost / imdb ^ SyntaxError:语法无效
语法提示非常感谢!
答案 0 :(得分:1)
imdbpy2sql.py -d /imdb -u 'postgres://sid:asdf@host/imdb'
是命令提示符命令调用,而不是Python代码。您无法从Python命令提示符运行它。
您需要打开cmd.exe
(在Windows上)并运行以下内容:
c:
cd \Users\dom\AppData\Roaming\Python\Scripts
python imdbpy2sql.py -d /imdb -u 'postgres://sid:asdf@host/imdb'
如果你想从Python解释器中解决它,你可以使用subprocess.check_call
或os.system
。
此外,/imdb
上的前导斜杠将导致Python认为您的意思是\imdb
,即“此驱动器根目录中名为imdb
的目录,所以它会抱怨它找不到c:\imdb
。你可能只想说imdb
而没有斜线。