Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2010, 13:07   #21
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

Цитата:
Опять встаёт на одном месте
ну так на одну вперед ты как раз убрал inc(num);
пропиши строку так
Код:
TMP.Text := HTTP.Get('http://jd.mail.ru/user/'+ IntToStr(num+1));
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Старый 20.10.2010, 13:09   #22
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

Цитата:
ошибка 403...ну может потому что много лазите очень по страницам?(блочат)
Как я тебе писал в прошлой твоей теме
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Старый 20.10.2010, 13:10   #23
HmTH
Пользователь
 
Регистрация: 19.10.2010
Сообщений: 47
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
вы знаете что такое исключение?

так вот, вы их не ловите(обработка это иное)
ошибка 403...ну может потому что много лазите очень по страницам?(блочат)

насчет браузера, а вы под браузер прикидываетесь?
Нет, исключения не знаю.

Как написал выше, вероятность бана отпадает. Потому что если я в исходном коде ставлю стартовую страницу например 350 , то на 362 (допусти) идет 403 ошибка, если ставлю 360 , то опять на 362 идёт 403 ошибка... дело в странице, что-то там не так.

На счет бразуера, просто если смотреть странизу не авторизированным, то там пишется что "Доступ к этой странице ограничен." , однако ссылку на мой мир всё равно можно было спарсить, но с постоянными 403 ошибками. Поэтому сделал авторизацию. Но тут опять в чем то загвостка.
HmTH вне форума Ответить с цитированием
Старый 20.10.2010, 13:10   #24
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

grafgrial, там цикл for вообще то.

пересмотрел ваш код, у вас при исключении он выходит из цикла.

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

обработка исключений идет через try except(или finally) end;
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 20.10.2010, 13:13   #25
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

Цитата:
grafgrial, там цикл for вообще то.
Я вкурсе сам вчера посоветовал

Цитата:
Как написал выше, вероятность бана отпадает.
Это под вопросом, потому что через браузер отправка идет мин. через 10 сек, а если превышена то бан
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Старый 20.10.2010, 13:14   #26
HmTH
Пользователь
 
Регистрация: 19.10.2010
Сообщений: 47
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
grafgrial, там цикл for вообще то.

пересмотрел ваш код, у вас при исключении он выходит из цикла.

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

обработка исключений идет через try except(или finally) end;
Да нет, я уверен что дело не в IP, но с другой стороны, не приложу ума из-за чего это ещё может быть. Да и мой мир тут не причем. Я на него даже не захожу. Я лишь беру его ссылку, не более того. Коннекчусь то я вообще к другой странице, и на ней то и написана ссылка на мой мир.

По поводу исключений, знать бы ещё как этим пользоваться )
HmTH вне форума Ответить с цитированием
Старый 20.10.2010, 13:18   #27
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Код:
try
  // Заходим на сайт, ищем form_build_id
  Tmp.Text := HTTP.Get('http://jd.mail.ru/');
  for I:=0 to Tmp.Count-1 do
    begin
      if Pos('name="form_build_id', Tmp[i])<>0 then
        begin
          BuildID := Copy(Tmp[i], Pos('id="', Tmp[i])+4, Length(Tmp[i]));
          BuildID := Copy(BuildID, 0, Pos('"',BuildID)-1);
          MainForm.StatusBar.Panels[0].Text := 'Form Build Id найден';
        end;
    end;
  // Заходим на сайт, ищем form_build_id
  // Код захода на сайт
  Data.Add('name='+Mail);
  Data.Add('pass='+Pass);
  Data.Add('op=');
  Data.Add('form_build_id='+BuildID);
  Data.Add('form_id=user_login_block');
  HTTP.Post('http://jd.mail.ru/node?destination=user', Data);
  // Код захода на сайт
  // Теперь собираем ссылки
  i := 0; // на всякий случай =)
  Tmp.Clear; // так же очищаем
  for num:=350 to 350000 do
    begin
     try
      TMP.Text := HTTP.Get('http://jd.mail.ru/user/'+ IntToStr(num));
      for I:=0 to Tmp.Count-1 do
        begin
          if Pos('my.mail.ru', Tmp[i])<>0 then
            begin
              Url := Copy(Tmp[i], Pos('href='#39, Tmp[i])+6, Length(Tmp[i]));
              Url := Copy(Url, 0, Pos(#39'>', Url)-2);
              MainForm.ListBoxUrl.Items.Append(Url);
            end
            else
            begin
              MainForm.StatusBar.Panels[0].Text := 'Ссылку не нашёл, продолжаю дальше';
              continue; // продолжение
            end;
     except
       continue;
     end;
          if (HTTP.ResponseCode = 404) or (HTTP.ResponseCode = 403) then
            begin
              continue;  // продолжение
            end;
        end;
    end;
  // Теперь собираем ссылки
  finally
    Tmp.Free; // освобождаем
    Data.Free;
  end;
попробуй так(это кусок из твоего кода если что), красным пометил то что вставил.

grafgrial, я про то что не inс(тем более изменять счетчик цикла нельзя), ни +1 не надо, надо просто пропускать итерацию цикла раз не вышло.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 20.10.2010, 13:22   #28
HmTH
Пользователь
 
Регистрация: 19.10.2010
Сообщений: 47
По умолчанию

Цитата:
Сообщение от grafgrial Посмотреть сообщение
Я вкурсе сам вчера посоветовал


Это под вопросом, потому что через браузер отправка идет мин. через 10 сек, а если превышена то бан
Да дело не во времени. Я же пишу, есть определенные ссылки, которые стопорят прогу.

Предположим, что одна из этих ссылок, это 362.

Наша программа начинает сбор ссылок с 1.
Идет:
1
2
3
100
300
361

Всё это она собрала и записала.

И вот она 362 ссылка. Прога остановилась, с 403 эррором.

Начинаем всё заного, но уже не с 1, а допустим с 200 ссылки.

Идёт:
200
250
300
350
361
Всё записали и собрали, и вот опять
362 - Прога встала.

Начинаём с 360 ссылки
360 - собрали
361 - собрали
362- встали )

Дело не в IP, прога может и 1000 ссылок собрать, и 100к ссылок, если бы не вот эта загвостка на 362 ссылке.



2Пепел Феникса, сейчас попробую.
HmTH вне форума Ответить с цитированием
Старый 20.10.2010, 13:24   #29
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
grafgrial, я про то что не inс(тем более изменять счетчик цикла нельзя), ни +1 не надо, надо просто пропускать итерацию цикла раз не вышло.
ок, сам не понял что написал в цикл. ну да счетчик цикла нельзя изменять
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Старый 20.10.2010, 13:27   #30
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

усе понял. ща что нибудь подкину
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите пожалуйста как сделать такую проверку орфографии Irinka87 Microsoft Office Word 1 10.12.2009 09:19
Как сделать грамотно проверку на столкновение с объектом Ckomoroh Общие вопросы Delphi 3 26.10.2009 02:38
как можно сделать проверку? KARUSHEV Помощь студентам 10 13.10.2009 15:15
Как сделать проверку строк в memo Neset Общие вопросы Delphi 2 26.02.2009 12:25
Помогите проверку ввода сделать Panda Помощь студентам 3 01.07.2008 20:50