Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Интересная задачка
Форумы портала PHP.SU » » HTTP и PHP » Интересная задачка

Страниц (1): [1]
 

1. onemoreuser - 23 Октября, 2011 - 21:36:20 - перейти к сообщению
Добрый вечер, Уважаемые знатоки PHP!

Возникла интересная потребность, но ввиду недостатка знаний, обращаюсь к Вам.
Объясню всё по порядку.

Есть кусок адреса вида:
csXXXX.vkontakte.ru/uYYYYYYY/ZZZ ZZ/y_AAAAAAAA.jpg
где xxxx - номер сервера на котором хранится картинка
yyyyy - id пользователя
zzzzzz - номер альбомы
y_AAAAAAAA (самое интересное) - это название картинки.

когда фотографии загружаются сразу в 1 альбом эта часть ссылки на них одинаковая:
csXXXX.vkontakte.ru/uYYYYYYY/ZZZ ZZ/y_.........jpg


суть: мне попала картинка из закрытого альбомы в "прямом" виде, то есть мне известно всё кроме названий картинок в этом альбоме. нужно реализовать тупой подбор названия картинки , для названия используются цифры ,a,b,c,d,e,f и реализовать проверку - существует ли по данному адресу картинка или же 404 Not Found.

Помогите пожалуйста.
2. OrmaJever - 23 Октября, 2011 - 23:12:33 - перейти к сообщению
1) для проверки существования можно использовать curl
2) сколько символов в названии картинки может быть?
(Добавление)
Вобщем я сам посмотрел и там 8 знаков, это выходит 4 294 967 296 комбинаций, это очень много даже для сотни потоков.
3. onemoreuser - 24 Октября, 2011 - 00:49:45 - перейти к сообщению
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2.  
  3. $main='http://csXXXXX.vkontakte.ru/uYYYYYYY/ZZZZZZZZ/y_';
  4. for($k=1;$k<1000;$k++)
  5. {
  6. $r="";
  7. for($i=1;$i<9;$i++)
  8. {
  9. $n=rand(0,15);
  10. switch ($n) {
  11.    case 10:
  12.        $n="a";
  13.        break;
  14.    case 11:
  15.        $n="b";
  16.        break;
  17.    case 12:
  18.        $n="c";
  19.        break;
  20.    case 13:
  21.        $n="d";
  22.        break;
  23.    case 14:
  24.       $n="e";
  25.        break;
  26.    case 15:
  27.       $n="f";
  28.        break;
  29. }
  30. $r=$r.$n;
  31. }
  32. $s=$main . $r.".jpg";
  33.  
  34. $ch = curl_init($s);
  35. $fp = fopen("ex.txt", "w");
  36.  
  37.  
  38. curl_setopt($ch, CURLOPT_FILE, $fp);
  39. curl_setopt($ch, CURLOPT_HEADER, 0);
  40.  
  41. curl_exec($ch);
  42. fclose($fp);
  43.  
  44. $sock = fopen ("ex.txt", "r");
  45. $t='';
  46. $t.= fgets($sock);
  47. if (strlen($t)>10)
  48. {
  49. echo $s ;
  50. echo " ";
  51. }
  52.  
  53. }
  54. fclose($sock);
  55. ?>


вот что делаю я.
4. OrmaJever - 24 Октября, 2011 - 01:05:31 - перейти к сообщению
и как результат ? Сколько за минуту подбирает? Здесь нужно как минимум использовать curl multi, но даже с ним это ниблая идея Растерялся
5. onemoreuser - 24 Октября, 2011 - 16:43:07 - перейти к сообщению
да, уже забросил эту идею.
по мануалам быстренько осваивал curl
скорость примерно 10ссылок\секунду
6. DeepVarvar - 24 Октября, 2011 - 20:13:44 - перейти к сообщению
onemoreuser пишет:
скорость примерно 10ссылок\секунду

Спойлер (Отобразить)

Оно того стоит?
7. Champion - 24 Октября, 2011 - 20:53:26 - перейти к сообщению
Можно, наверное, ускорить этот процесс опцией CURLOPT_NOBODY, чтоб получать только заголовок, но а на самом деле не надо заниматься глупостями.
8. onemoreuser - 29 Октября, 2011 - 22:58:11 - перейти к сообщению
DeepVarvar пишет:
onemoreuser пишет:
скорость примерно 10ссылок\секунду

Спойлер (Отобразить)

Оно того стоит?

вообще стоит , там интимные фотографии знакомой Радость
9. DeepVarvar - 29 Октября, 2011 - 23:15:48 - перейти к сообщению
Ээээ... стОит или стоИт??? Радость
10. onemoreuser - 01 Ноября, 2011 - 12:33:55 - перейти к сообщению
стОит для того чтобы стоИт Радость
11. EuGen - 01 Ноября, 2011 - 12:37:17 - перейти к сообщению
А я думаю, что не нужно.
Если задача в этом, то верно одно из двух
- Можно попросить показать фотографии
- Человек не хочет их показывать и скрывает, и, стало быть, имеет место вмешательство в личную жизнь.

И помогать здесь Вам в этом, я надеюсь, никто не будет.

 

Powered by ExBB FM 1.0 RC1