Список форумов nostalgy.net.ru nostalgy.net.ru
форум сайта "Ностальгия"
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Граббер РБК

 
Начать новую тему   Ответить на тему    Список форумов nostalgy.net.ru -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Nikodim
постоянный посетитель


Зарегистрирован: 14.01.2007
Сообщения: 2922
Откуда: г. Новосибирск

СообщениеДобавлено: Вт Янв 12, 2016 4:06 pm    Заголовок сообщения: Граббер РБК Ответить с цитатой

щас написал подлую программу на языке программирования Java, которая ворует видео с новостного сайта "РБК" и конвертирует их в файл в формате "MPEG DVD". Причина тому заключается в том, что я предпочитаю видео смотреть в режиме offline. Прога работает под Linux. Исходный код тут: http://user:user@ru54.com:83/svn/projects/Java/RBC_Video/main/startIt.java.
Если вы любите смотреть финансовую аналитику или комментарии Степана Демуры, то она вам пригодится, поскольку вы всегда сможете интересные видео сохранить себе на жёсткий диск для каких-то своих целей (история, компромат и прочее).

Код:
/**
 * An RBC Videos Grabber
 * by Artem V. Efremov (a.k.a. "Nikodim")
 *
 * I've just written a sneaky program in Java which grabs videos from
 * one news web site and converts 'em into an MPEG DVD file. The goal
 * is the following: I like to watch everything offline.
 *
 * This has been made in Eclipse 4.4.1 "Luna" (http://www.eclipse.org).
 * Feel free to extend the code with a newer functionality if required.
 * I won't charge any duty from you.
 * Also, be able to get in touch with me at nspu@list.ru (no spam please to not be blacklisted by me).
 * Have fun!
 */

package main;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.text.DecimalFormat;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.io.File;

public class startIt {

   @SuppressWarnings("deprecation")
   public static void main(String[] args) throws ParseException, FileNotFoundException {
      final SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");

      final String baseURL = "http://e3.vod.video.rbc.ru//archive/2016/01/11/s_n_1911.folder/576/";
      final Date timeThing = formatter.parse("00:15:19");
      final String filename = "/home/artem/Документы/temp/getVideo.sh";

      final String[] preCmds = new String[] {
         "#!/bin/sh",
         "mkdir ./video",
         "cd ./video"
      };
      final String[] postCmds = new String[] {
            "cd ..",
            "# .TS -> mpeg DVD",
            "cat ./video/*.ts > ./videofile.ts && rm -Rf ./video && ffmpeg -i ./videofile.ts -vcodec mpeg2video -acodec mp3 ./videofile.mpg && rm -f ./videofile.ts"
         };

      int t = (timeThing.getHours() * 3600 + timeThing.getMinutes() * 60 + timeThing.getSeconds()) / 5;
      DecimalFormat objDecimalFormat = new DecimalFormat("00000"); // http://easy-code.ru/lesson/formatting-numeric-output-java

      PrintStream objPrintStream = new PrintStream(new FileOutputStream(filename));
      for (String s1 : preCmds) {
         System.out.println(s1); objPrintStream.println(s1);
      }
      for (int x = 0; x < t; x++) {
         String myStr = "wget " + baseURL + "d" + objDecimalFormat.format((long) x) + ".ts";
         System.out.println(myStr); objPrintStream.println(myStr);
      }
      for (String s2 : postCmds) {
         System.out.println(s2); objPrintStream.println(s2);
      }
      objPrintStream.close();
      if (new File(filename).setExecutable(true)) {
         System.out.println("Success.");
      } else {
         System.err.println("Failure.");
      }


   }

}

_________________
DOS not dead!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Антиквар
админ


Зарегистрирован: 15.01.2007
Сообщения: 3773
Откуда: Новосибирск

СообщениеДобавлено: Пт Янв 15, 2016 1:21 am    Заголовок сообщения: Ответить с цитатой

Злодей! Laughing
А для ютуба и вконтакта можешь сделать нечто подобное? Wink
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Nikodim
постоянный посетитель


Зарегистрирован: 14.01.2007
Сообщения: 2922
Откуда: г. Новосибирск

СообщениеДобавлено: Пт Янв 15, 2016 6:57 pm    Заголовок сообщения: Ответить с цитатой

В теории - конечно, если разбирусь в механизме, как они видео добывают с серверов.Для YouTube уже есть сервис, который грабит видосики.
_________________
DOS not dead!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов nostalgy.net.ru -> Программирование Часовой пояс: GMT + 7
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB

Anti Bot Question MOD - phpBB MOD against Spam Bots
Заблокировано регистраций / сообщений: 556162 / 0