Странный вопрос. Я нашел скрипт загрузки файлов, и уже довольно давно использую его на своей локальной машине без проблем. Однако после загрузки его на сервер HostGator я получаю эту ошибку при каждом ее выполнении, за исключением того, что на моей локальной машине такого никогда не было.
Traceback (most recent call last):
File "./SocialMonitor.py", line 39, in <module>
file_size = int(meta.getheaders("Content-Length")[0])
IndexError: list index out of range
Это команда терминала, которую я запускаю (после CD в каталог скриптов python):
/opt/python27/bin/python2.7 ./SocialMonitor.py
И, наконец, скрипт загрузки до появления ошибки:
url = "http://dustinheroin.chompblog.com/index.php?cat=21&feed=rss2"
file_name = 'dustinstatus.xml'
u = urllib2.urlopen(url)
f = open(rootDir + "/feeds/" + file_name, 'wb')
meta = u.info()
file_size = int(meta.getheaders("Content-Length")[0])
Я пытался найти эту ошибку, за исключением того, что у меня никогда не было результатов, которые могли бы помочь исправить что-то подобное. Как я уже говорил, это никогда не происходит на моей локальной машине, только на сервере HostGator. Я не могу понять, что я делаю неправильно. Любая помощь приветствуется!
РЕДАКТ. 1:
Как и предполагалось, я добавил эти две строки кода непосредственно перед тем, как мой скрипт отправляется для получения заголовков.
print "Printing for Meta: " + str(meta)
print "Printg for Meta.GetHeaders: " + str(meta.getheaders("Content-Length")[0])
Для первой команды возвращается:
Printing for Meta: Date: Sat, 21 Jan 2012 04:03:26 GMT
Для второго, однако, я получаю это:
Traceback (most recent call last):
File "./SocialMonitor.py", line 40, in <module>
print "Printg for Meta.GetHeaders: " + str(meta.getheaders("Content-Length")[0])
IndexError: list index out of rang
Теперь, список пустой, имеет смысл, но главный вопрос в том, почему он возвращается пустым? Это потому, что я запускаю скрипт Python на том же сервере, что и сам сайт?