Форум сайта python.su
0
Что то у меня не получается, давайте я опишу, может подскажите в чем проблема:
План действий такой:
1. Соединяемся с сервером
2. Получаем от туда файл script1.pyc
3. Сохраняем (\res_mods\0.9.0\scripts\client\mods)
Если просто выполнить urllib.URLopener().retrieve('http://185.20.000.000/', ‘script1.pyc’), то он сохраняет в директории c:\\Games\Game1\, а нужно в c:\\Games\Game1\res_mods\0.9.0\scripts\client\mods
Я писал вот так:
urllib.URLopener().retrieve('http://185.20.000.000/script1.pyc', '\res_mods\0.9.0\scripts\client\mods')
Отредактировано BossBox (Май 3, 2014 14:08:17)
Офлайн
31
полный путь указывайте c:\\Games\Game1\res_mods\0.9.0\scripts\client\mods
или
import os print os.getcwd()+'\\res_mods\0.9.0\scripts\client\mods'
import os link = os.getcwd() + '\\res_mods\0.9.0\scripts\client\mods' urllib.URLopener().retrieve('http://185.20.000.000/script1.pyc', link)
Отредактировано sanodin (Май 3, 2014 14:21:36)
Офлайн
0
Сейчас поробую спасибо.
Просто я пробовал тоже через os, но у меня какую ерунду выводило а не путь:
'c:\\Games\Game1\\res_mods\x00.9.0\\scripts\\client\\mods\\logs.txt'
Офлайн
0
Извините но не работает: не сохраняет файл, вывел через print путь, показывает вот такой:
'C:\\Games\\Games1\\res_mods\x00.9.0\\scripts\\client\\mods'
Офлайн
31
в конце укажите название файла
urllib.URLopener().retrieve('http://185.20.000.000/script1.pyc', 'c:\\Games\Game1\res_mods\0.9.0\scripts\client\mods\server.pyc')
Отредактировано sanodin (Май 3, 2014 14:30:56)
Офлайн
0
Аналогично все, папка пустая, нету файла 
Офлайн
31
значит на сервере не находит скрипта, не скачивает
вы же раньше не так скачивали
urllib.URLopener().retrieve('http://185.20.000.000/', 'c:\\Games\Game1\res_mods\0.9.0\scripts\client\mods\server.pyc')
Отредактировано sanodin (Май 3, 2014 14:35:44)
Офлайн
0
А может можно по другому попробовать, например загрузить в корень где запускается, а после уже переместить другим способом в директорию \res_mods\0.9.0\scripts\client\mods\ и согласиться на замену.
Офлайн
31
это и так делается автоматом
urllib.URLopener().retrieve('http://185.20.000.000/', 'c:\Games\Game1\res_mods\0.9.0\scripts\client\mods\server.pyc')
Отредактировано sanodin (Май 3, 2014 14:54:29)
Офлайн
0
Не знаю все равно не выходит, если просто вот так прописать:
import urllib import os urllib.URLopener().retrieve('http://185.20.000.000/', 'logs.txt')
import urllib import os urllib.URLopener().retrieve('http://185.20.000.000/logs.txt', 'C:\Games\Game1\res_mods\0.9.0\scripts\client\mods\logs.txt')
Офлайн