我的网络服务器( .htaccess )上有一个受密码保护的区域。有一个php页面可以上传文件(当前仅允许图像文件)。我给你带来了一个可执行程序。当我运行它时,我得到一个追溯(您会在我的问题结尾处找到它)。 但是,当我注释掉“ br.submit()”并再次运行它时,所有内容都可以通过打印成功打印。这意味着访问已成功。为什么文件未上传到密码保护区域?我该怎么办?我确定我缺少什么。
顺便说一句,用于测试url,用户名和密码的代码是正确的。如果您想测试,请放心。
from mechanize import Browser
def access_atuh(url = None,
user = None,
pwd = None,
file_path = None):
br = Browser()
br.add_password(url, user, pwd)
response = br.open(url)
br.select_form(nr=0)
br.form.add_file(open(file_path,'rb'))
#br.form.add_file(open(file_path), 'text/plain', file_path)
br.submit()
print response.read()
access_atuh(url = "http://sophus.bplaced.net/xarphus_support/support_account/test/upload_form.php",
user = "test",
pwd = "test",
file_path = r'C:\path\to\YourImageFile.jpg')
跟踪:
回溯(最近通话最近):文件 “ C:\ Users \ Sophus \ Desktop \ http_mechnaize \ hppt_mechanize.py”,第20行, 在 file_path = r'C:\ Users \ Sophus \ Desktop \ Buehne.jpg')文件“ C:\ Users \ Sophus \ Desktop \ http_mechnaize \ hppt_mechanize.py”,第13行 在access_atuh中 res = br.submit()文件“ C:\ Python27 \ lib \ site-packages \ mechanize_mechanize.py”,行685,在 提交 返回self.open(self.click(* args,** kwds))文件“ C:\ Python27 \ lib \ site-packages \ mechanize_mechanize.py”,第254行,在 打开 返回self._mech_open(url_or_request,data,timeout = timeout)文件“ C:\ Python27 \ lib \ site-packages \ mechanize_mechanize.py”,行 310,_mech_open中 引发响应httperror_seek_wrapper:HTTP错误401:未经授权