Привет. Подскажите рациональное решение проблемы.
Я очень часто скачиваю некие файлы из некого сервиса. У файлов такой шаблон имени: XXX_YYY.xls, где XXX = рандомная комбинация из цифр длиной 10 символов, а YYY = комбинация из 10 символов, которая соответствует определенной фигне.
Т.е. YYY не меняется у одной и той же фигни.
Мне нужно как-то сделать так, чтобы из такого названия превращалось в НАЗВАНИЕ_ФИГНИ.xls

Можно ли в хроме, например, написать модуль, который бы переименовывал файлы на лету? Или есть какое-нибудь решение? Кстати, на странице, откуда я скачиваю есть сопоставление YYY и название фигни, только чуть HTML попарсить нужно.

Tagged with →  

20 Responses to Привет.

  1. Xuagreen:

    Я не уверен, что хром даст поменять имя файла экстеншену, но ты можешь сделать простую страничку на PHP. Отдаёшь ей имя файла, страничка подставляет имя и выдаёт ссылку на оригинальный файл с content-disposition и указываешь там любое имя тебе удобное. В итоге на твою страничку минимум нагрузки (только генерация имени как ты захочешь), а файл будет качаться с оригинального хостинга, но с твоим выбранным именем.

  2. DiTunes:

    Мне сначала тогда нужно будет скачать эти файлы с той странички, а потом загрузить их на мою.
    Это не упрощает задачу.

  3. Xuagreen:

    не надо ничего никуда грузить. Прочитай ещё раз, что я написал.

  4. DiTunes:

    не, все равно не понятно

    ссылку на файл выдать не сможет. т.к. XXX всегда разные.

  5. Xuagreen:

    ну ты же знаешь эти XXX. Отдай страничке оригинальную ссылку, в итоге получишь этот файл с нужным именем.

  6. D05Good:

    можно сделать extension который на странице будет заменять имена файлов на те, которые тебе надо. например в vkontakte downloader использует такой трюк для замены имени файла при даунлоаде: test.xls?var=test&/НОВОЕ ИМЯ ФАЙЛА.xls

    но я попробовал — не получилось повторить. второй вариант — экстеншн меняет ссулку на файл, отправляя его на твой сервер, с правильным php скриптом, который переименует как надо файл и отдаст тебе его (скачает и отдаст)

  7. Xuagreen:

    фкантактик меняет имя на стороне сервера, со стороны клиента его не поменять. Делать надо как я сказал. В чём проблема у автора я не понимаю.

  8. DiTunes:

    только в том, что я нихуя не понял

  9. Xuagreen:

    кароч, мой вариант не работает. Влиять на работу постороннего сервиса низзя. Вобщем, выход один — прокси.

  10. Todsuper:

    Можно решить расширением для фаерфокса (остальные браузеры не предоставляют апи, чтобы можно было сменить имя скачиваемого файла).

  11. DiTunes:

    А что там под фаерфокс? Сможет кто-нибудь сделать? Это точно реализуемо?

  12. Ki4no:

    хосспидя, простой скрипт который переименовывает все уже скачанные файлы в каталоге и не надо файрфокс трогать 🙂

  13. DiTunes:

    скрипт для чего?
    нужно перед скачиванием (при клике на ссылку) ему как-то сопоставить название с именем файла

  14. Ki4no:

    зачем «перед»? ну скачался он у тебя в кривом виде в Downloads на рабочем столе ярлык на батник который все файлы в Downloads переименовывает правильно

    лишний даблклик всего-лишь

    зачем «до»?

  15. DiTunes:

    где батник будет брать соответствие YYY и человекопонятное название фигни?

  16. Ki4no:

    оно разве не одно и тоже всегда?

    ну хорошо, тогда сложнее, на хорошем скриптовом языке уже пишется «паук» который будет ходить на страничку и скачивать оттуда файлы и правильно их раскладывать-обзывать.

    запустил — в папочке все файлы правильно названные получил

  17. DiTunes:

    там авторизация еще при доступе на странице
    в общем, будет нихуя не просто в итоге

  18. Ki4no:

    авторизация по токену?

  19. DiTunes:

    логин/пароль
    в принципе, я могу сохранить куда-нибудь пары YYY = НАЗВАНИЕ
    Или просто сохранить HTML

    но код в батнике будет не простым

  20. DiTunes:

    Сначала задача казалась такой простой.
    Возможно ли, если я на странице, где есть ссылка на скачивание файла + название, которое нужно подставить вставлю некий js код в консоль гугл, чтобы скачались файлы с правильным именем?
    Можно ли на js инициировать загрузку и переименование файла?

Добавить комментарий