我收到一条消息“名称'ftp'未定义” 好像我可能也搞砸了其他东西。
import ftplib
from ftplib import FTP
from sys import argv
import os
filename = argv
ftp = FTP(ftp.server.com)
ftp.login(username, password)
ftp.storbinary('STOR %s', open('%s', 'rb')) (filename, filename)
答案 0 :(得分:1)
sys.argv是一个列表。列表中的第一项是命令,下一项是给定的参数。你可能想要filename = argv [1]。
您需要为用户名和密码提供值才能使用。
答案 1 :(得分:1)
您对ftp.server.com的使用是非法的 - 您需要引用它。 Python认为“ftp”在那时是一个标识符,你试图将字段“服务器”拉出来,最后是字段“com”。由于您希望它是服务器名称字符串,请引用它。
此外,您错误地使用了sys.argv
。 Argv是字符串列表,而不是单个字符串。您的文件名应为" ".join(argv[1:])
,以便大致逐字捕获命令行。 (argv [0]是脚本本身。)