X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Скрипт для закачивания файлов с другого сайта
Чеснок
Чеснок
Topic Starter сообщение 27.12.2013, 4:24; Ответить: Чеснок
Сообщение #1


мошенник
*******


Группа: Banned
Сообщений: 3623
Регистрация: 9.12.2009
Из: СССР ☭
Поблагодарили: 1520 раз
Репутация:   262  


Народ, подскажите каким скриптом можно закачать себе на сайт 40000 файлов (примерно 100 гигов), смысл: кормлю ему список урлов (или рядом лежит link.txt) а он качает в папку в которой лежит сам то что я ему скормил. (как-то, а то время на исполнение скрипта не резиновое).


--------------------
Забанен за мошенничество
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
anchous
anchous
сообщение 27.12.2013, 4:48; Ответить: anchous
Сообщение #2


Йеребатан Абырвалг
*******

Группа: Super Moderator
Сообщений: 7997
Регистрация: 12.4.2011
Из: СССР
Поблагодарили: 4519 раз
Репутация:   418  


Чеснок, телепорт не? потом тупо копипастишь урлы с морды и аляулю


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Чеснок
Чеснок
Topic Starter сообщение 27.12.2013, 6:02; Ответить: Чеснок
Сообщение #3


мошенник
*******


Группа: Banned
Сообщений: 3623
Регистрация: 9.12.2009
Из: СССР ☭
Поблагодарили: 1520 раз
Репутация:   262  


телепорт десктопный, мне нужно на сайт сразу (в РБ исходящий канал 500килобит, я 100г заливать буду годы)

Нужно нечто наподобие PHP RapidGet Pro (только ни где не могу скачать)

Сообщение отредактировал Чеснок - 27.12.2013, 6:09


--------------------
Забанен за мошенничество
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ArhStrAngeR
ArhStrAngeR
сообщение 27.12.2013, 10:15; Ответить: ArhStrAngeR
Сообщение #4


Новичок
*

Группа: Viewer
Сообщений: 6
Регистрация: 24.7.2012
Поблагодарили: 2 раза
Репутация:   2  


(Чеснок @ 27.12.2013, 4:24) *
Народ, подскажите каким скриптом можно закачать себе на сайт 40000 файлов (примерно 100 гигов), смысл: кормлю ему список урлов (или рядом лежит link.txt) а он качает в папку в которой лежит сам то что я ему скормил. (как-то, а то время на исполнение скрипта не резиновое).

Я думаю вот это решит Вашу проблему.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Чеснок
Чеснок
Topic Starter сообщение 27.12.2013, 11:19; Ответить: Чеснок
Сообщение #5


мошенник
*******


Группа: Banned
Сообщений: 3623
Регистрация: 9.12.2009
Из: СССР ☭
Поблагодарили: 1520 раз
Репутация:   262  


ArhStrAngeR, Гугл решает многие мои проблеммы и я около суток занимаюсь этой. Мне интересен php скрипт который будет прост и не будет требовать колупания в консолях.


--------------------
Забанен за мошенничество
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
devuser
devuser
сообщение 27.12.2013, 17:25; Ответить: devuser
Сообщение #6


Все будет тип-топ
*****

Группа: Active User
Сообщений: 713
Регистрация: 5.12.2012
Из: Online
Поблагодарили: 342 раза
Репутация:   52  


Чеснок, скрипт очень простой, за 10 минут написал в качестве разминки.
Но нужно, чтобы он не вылезал за max_execution_time в php.ini
Или запускать его из командной строки.

Читает все ссылки из links.txt
Создает в папке $subdir (в нашем случае /test) каталоги, как у источника.
В нашем случае файл jquery-1.8.3.min.js попадет в корень (в каталог /test), а файл html5.js будет лежать в каталоге /test/svn/trunk/
Каталог $subdir должен быть доступен для записи.

php
<?
    $subdir = '/test';
    $count = 0;

    $links = @file_get_contents('links.txt');
    if ($links) {
        $links = explode("\n", $links);
        if (count($links > 0)) {
            foreach ($links as $link) {
                $data = file_get_contents(trim($link));
                $filename = (strpos($link, '?') === false) ? parse_url($link) : parse_url(substr($link, 0, strpos($link, '?')));

                $dir = $_SERVER['DOCUMENT_ROOT'] . $subdir . substr($filename['path'], 0, strrpos($filename['path'], '/') + 1);
                $file = substr($filename['path'], strrpos($filename['path'], '/') + 1);
                @mkdir($dir, 0777, true);
                file_put_contents($dir . $file, $data);
                $count += 1;
            }
            echo 'Работа завершена. Сохранено файлов: ' . $count;
        } else {
            echo 'В файле links.txt нет ссылок';
        }
    } else {
        echo 'Файл links.txt не найден';
    }
?>


links.txt
http://code.jquery.com/jquery-1.8.3.min.js
http://html5shiv.googlecode.com/svn/trunk/html5.js


Сообщение отредактировал devuser - 27.12.2013, 17:26


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Чеснок
Чеснок
Topic Starter сообщение 28.12.2013, 0:40; Ответить: Чеснок
Сообщение #7


мошенник
*******


Группа: Banned
Сообщений: 3623
Регистрация: 9.12.2009
Из: СССР ☭
Поблагодарили: 1520 раз
Репутация:   262  


чтобы он не вылезал за max_execution_time в php.ini


Я тот ещё программер, но краем мозга догадываюсь, что скрипт должен выполняться (а выполняется он пока файл с ссылками не пуст?) меньше чем за max_execution_time? Как раччитать сколько времени ему понадобиться на закачку 50000 файлов?


--------------------
Забанен за мошенничество
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
devuser
devuser
сообщение 28.12.2013, 0:53; Ответить: devuser
Сообщение #8


Все будет тип-топ
*****

Группа: Active User
Сообщений: 713
Регистрация: 5.12.2012
Из: Online
Поблагодарили: 342 раза
Репутация:   52  


Чеснок, есть возможность менять этот параметр?

Если через .htaccess, то так
php_value max_execution_time 0


И он станет без ограничений


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Чеснок
Чеснок
Topic Starter сообщение 28.12.2013, 1:13; Ответить: Чеснок
Сообщение #9


мошенник
*******


Группа: Banned
Сообщений: 3623
Регистрация: 9.12.2009
Из: СССР ☭
Поблагодарили: 1520 раз
Репутация:   262  


Ну если у меня есть возможность залить к себе 100 гигов, то это не фрихост )) изменю, я имею ввиду нет ли каких ограничений (а ну как сервер зависнет или ещё чегото там blush.gif )


--------------------
Забанен за мошенничество
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
devuser
devuser
сообщение 28.12.2013, 1:27; Ответить: devuser
Сообщение #10


Все будет тип-топ
*****

Группа: Active User
Сообщений: 713
Регистрация: 5.12.2012
Из: Online
Поблагодарили: 342 раза
Репутация:   52  


Чеснок, да вроде не должен
В крон задание добавьте каждое 28 декабря в 4 часа ночи. Запустится в четыре ночи и будет ждать следующего года.

Хотя лучше руками проверить, на файле из 1000 ссылок, примерно, на коленке писал

Кстати, можно немного апгрейдить
Каждые 1000 файлов (задается в $log_when_count) будет писать в log.txt сколько скачал из скольки

<?
    $subdir = '/test';
    $count = 0;
    $log_when_count = 1000;

    $links = @file_get_contents('links.txt');

    if ($links) {
        $links = explode("\n", $links);
        if (count($links > 0)) {
            foreach ($links as $link) {
                $data = file_get_contents($link);
                $filename = (strpos($link, '?') === false) ? parse_url($link) : parse_url(substr($link, 0, strpos($link, '?')));

                $dir = $_SERVER['DOCUMENT_ROOT'] . $subdir . substr($filename['path'], 0, strrpos($filename['path'], '/') + 1);
                $file = substr($filename['path'], strrpos($filename['path'], '/') + 1);
                @mkdir($dir, 0777, true);
                file_put_contents($dir . $file, $data);
                $count += 1;
                if (($count % $log_when_count) == 0) {
                    $log = file_exists('log.txt') ? file_get_contents('log.txt') : '';
                    file_put_contents('log.txt', 'Скачано ' . $count . ' файлов из ' . count($links) . "\n" . $log);
                }
            }
            echo 'Работа завершена. Сохранено файлов: ' . $count;
        } else {
            echo 'В файле links.txt нет ссылок';
        }
    } else {
        echo 'Файл links.txt не найден';
    }
?>


Будет полезно для ручной корректировки, если что-то упадет. Удалили N строк из links.txt и заново запустили.

Сообщение отредактировал devuser - 28.12.2013, 1:29


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыГде взять скрипт круговой индикатор выполнения
3 slavyn 352 Вчера, 22:55
автор: Caterpillar
Открытая тема (нет новых ответов) ВНИМАНИЕ: Тема для обсуждения работ фотоконкурса «Новогодний косплей» 18+
5 admin 898 Вчера, 21:58
автор: dota
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыНе повлияет ли на позиции сайта?
Если убрать контент
12 maxg5 1299 Вчера, 21:11
автор: alexandrrr
Открытая тема (нет новых ответов) EssayPartner.com - до 60% за первый заказ, до 35% за ребиллы, современные ленды и WL для всех
15 EssayPartner 2887 Вчера, 20:18
автор: EssayPartner
Горячая тема (нет новых ответов) Качественный копирайт и наполнение Вашего сайта
Подходи, торопись, покупай живо...
307 DroBit 86260 Вчера, 19:03
автор: Fox


 



RSS Текстовая версия Сейчас: 15.12.2017, 1:18
Дизайн