- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
if (anidub::$exucution)
{
//получаем страницу для парсинга
$page = anidub::getContent($torrent_id, anidub::$sess_cookie);
if ( ! empty($page))
{
//ищем на странице дату регистрации торрента
if (preg_match("/<td width=\"\" class=\"heading\" valign=\"top\" align=\"right\">Добавлен<\/td><td valign=\"top\" align=\"left\">(.*)<\/td>/", $page, $array))
{
//проверяем удалось ли получить дату со страницы
if (isset($array[1]))
{
//если дата не равна ничему
if ( ! empty($array[1]))
{
//сбрасываем варнинг
Database::clearWarnings($tracker);
//приводим дату к общему виду
$date = $array[1];
$date_str = anidub::dateNumToString($array[1]);
//если даты не совпадают, перекачиваем торрент
if ($date != $timestamp)
{
preg_match('/<a href=\"download\.php\?id=(\d{2,6})&name=(.*)\">/U', $page, $array);
$torrent_id = $array[1];
$torrent_id_name = $array[2];
//сохраняем торрент в файл
$torrent = anidub::getTorrent($torrent_id, $torrent_id_name, anidub::$sess_cookie);
$client = ClientAdapterFactory::getStorage('file');
$client->store($torrent, $id, $tracker, $name, $torrent_id, $timestamp);
//обновляем время регистрации торрента в базе
Database::setNewDate($id, $date);
//отправляем уведомлении о новом торренте
$message = $name.' обновлён.';
Notification::sendNotification('notification', $date_str, $tracker, $message);
}
}
else
{
//устанавливаем варнинг
if (anidub::$warning == NULL)
{
anidub::$warning = TRUE;
Errors::setWarnings($tracker, 'not_available');
}
//останавливаем процесс выполнения, т.к. не может работать без кук
anidub::$exucution = FALSE;
}
}
else
{
//устанавливаем варнинг
if (anidub::$warning == NULL)
{
anidub::$warning = TRUE;
Errors::setWarnings($tracker, 'not_available');
}
//останавливаем процесс выполнения, т.к. не может работать без кук
anidub::$exucution = FALSE;
}
}
else
{
//устанавливаем варнинг
if (anidub::$warning == NULL)
{
anidub::$warning = TRUE;
Errors::setWarnings($tracker, 'not_available');
}
//останавливаем процесс выполнения, т.к. не может работать без кук
anidub::$exucution = FALSE;
}
}
else
{
//устанавливаем варнинг
if (anidub::$warning == NULL)
{
anidub::$warning = TRUE;
Errors::setWarnings($tracker, 'not_available');
}
//останавливаем процесс выполнения, т.к. не может работать без кук
anidub::$exucution = FALSE;
}
}
Dummy00001 23.03.2013 20:32 # +1
ы? ты про что это? с каких это пор пыхомакаки обрабатывают ошибки??
roman-kashitsyn 23.03.2013 20:51 # −2
eth0 24.03.2013 21:39 # +2
zloirock 24.03.2013 13:00 # 0
someone 25.03.2013 09:17 # −1
DrFreez 25.03.2013 10:36 # 0
scriptin 25.03.2013 18:41 # 0
Вспомнилась классика: http://stackoverflow.com/a/1732454/484666
DrFreez 26.03.2013 08:46 # 0
scriptin 26.03.2013 19:10 # 0
Записал.
>более менее нормального HTML
Вот пример парсеринга полностью валидного HTML
DrFreez 27.03.2013 00:42 # 0
DrFreez 27.03.2013 00:53 # 0
guest 12.12.2014 22:14 # 0
DrFreez 25.03.2013 10:39 # +1
guest 12.12.2014 15:31 # 0
P.S. там код мой, не ваш
Vasiliy 12.12.2014 15:50 # 0
guest 13.12.2014 00:50 # +1