HELP!!!!!

Jeka
Posts: 3
Joined: 21 Nov 2003 21:45
Location: Israel

HELP!!!!!

Post by Jeka »

podskazhite gospoda programisti!!!

kak i na chem ya mogu snimat inf. s interneta i s etoy inf. rabotat
t.e na primer
kazhdir 2 chasa posilat zapros i poluchat kakie libo dannie s opredelennogo
site'a i eti dannie obrabativat !!

spasibo
User avatar
JustMax
Уже с Приветом
Posts: 1476
Joined: 05 Dec 2000 10:01
Location: Vilnius -> Bonn

Re: HELP!!!!!

Post by JustMax »

Jeka wrote:podskazhite gospoda programisti!!!

kak i na chem ya mogu snimat inf. s interneta i s etoy inf. rabotat
t.e na primer
kazhdir 2 chasa posilat zapros i poluchat kakie libo dannie s opredelennogo
site'a i eti dannie obrabativat !!

spasibo


В crontab :

* *,2 * * * ./wget [parameters] http://site/path?parameters | yourscript.sh

:pain1:
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Re: HELP!!!!!

Post by Sabina »

Jeka wrote:t.e na primer
kazhdir 2 chasa posilat zapros i poluchat kakie libo dannie s opredelennogo
site'a i eti dannie obrabativat !!


Если вы работаете с JSP можно создать файл, который будет <load-on-startup>, то есть в web.xml в <servlet> описание этого файла добавляется пустой таг <load-on-starup/>.

В этом файле вставляем в декларацию init, а в нем в отдельном треде скрипт, который идет на нужный вам сервер и делает что там надо. Чтобы это делалось периодически все это суется в while (true) loop, а для установки интервала между запросами пользуемся sleepover и календарем.

Примерно вот так:

<%!
public void init() throws ServletException
{
final Calendar c = Calendar.getInstance();
final long now = c.getTimeInMillis();
final Smtp smtp = new Smtp();

System.out.println("loading service.jsp");
smtp.setHost("[smtp server name]");
smtp.setUid("[accountname]");
smtp.setPwd("[password]");
smtp.setName("{To name]");
smtp.setFrom("[From email address]");
smtp.setTo("[To email address]");

// declare the start time
c.set(Calendar.HOUR_OF_DAY, 16);
c.set(Calendar.MINUTE, 30);
c.set(Calendar.SECOND, 0);

new Thread(new Runnable()
{
public void run()
{
while(true)
{
long millis;
do
{
millis = c.getTimeInMillis() - now;
//c.add(Calendar.DAY_OF_MONTH, 1); // wait interval
c.add(Calendar.MINUTE, 15); // wait interval
} while (millis < 0L);

smtp.setSubject("[Your Server]");
smtp.setMessage("Still alive...");
smtp.send();

try{Thread.sleep(millis);}
catch(Exception e){}
}
}}).start();
}
%>
<%@ page import="java.util.Calendar"%>
<%@ page import="[Smtp servlet lib extension]"%>


Этот шлет емейл "Your Server Still alive" на указанный адрес, а в принципе можно туда все что хочется загнать.

Сабина
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Re: HELP!!!!!

Post by Sabina »

JustMax wrote:В crontab :

* *,2 * * * ./wget [parameters] http://site/path?parameters | yourscript.sh


Скажите, а как вы знаете, что то, что вам надо храниться на этом сервере в параметрах?
Или речь идет о скрипте, который храниться на том же сервере?

Спрашиваю от того, что не совсем понимаю, но хочу понять совсем :mrgreen:

Сабина
User avatar
JustMax
Уже с Приветом
Posts: 1476
Joined: 05 Dec 2000 10:01
Location: Vilnius -> Bonn

Re: HELP!!!!!

Post by JustMax »

Sabina wrote:
Скажите, а как вы знаете, что то, что вам надо храниться на этом сервере в параметрах?
Или речь идет о скрипте, который храниться на том же сервере?

Спрашиваю от того, что не совсем понимаю, но хочу понять совсем :mrgreen:

Сабина


Так я то не знаю - но Jeka то наверное знает какой сервер он хочет слушать и какие параметры ему нужны. А вообще вопрос из разряда очень неконкретных - слишком мало информации.
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Re: HELP!!!!!

Post by Sabina »

JustMax wrote:Так я то не знаю - но Jeka то наверное знает какой сервер он хочет слушать и какие параметры ему нужны. А вообще вопрос из разряда очень неконкретных - слишком мало информации.


Так я про ваш пример crpon job спрашиваю
* *,2 * * * ./wget [parameters] http://site/path?parameters | yourscript.sh

какие параметры, например, могут туда передаваться на этот сервер?

Сабина
User avatar
JustMax
Уже с Приветом
Posts: 1476
Joined: 05 Dec 2000 10:01
Location: Vilnius -> Bonn

Re: HELP!!!!!

Post by JustMax »

Sabina wrote:
JustMax wrote:Так я то не знаю - но Jeka то наверное знает какой сервер он хочет слушать и какие параметры ему нужны. А вообще вопрос из разряда очень неконкретных - слишком мало информации.


Так я про ваш пример crpon job спрашиваю
* *,2 * * * ./wget [parameters] http://site/path?parameters | yourscript.sh

какие параметры, например, могут туда передаваться на этот сервер?

Сабина


Вы так часто меняете аватары, что у меня голова идет кругом. :D
Да любые параметры - в обычном формате URL get (Обычно обаботка HTTP GET, HTTP POST на серверах происходит одинаково). Если параметры динамические - то их можно формировать к примеру так :

* *,2 * * * wget [wget parameters] http://site/path?'script to generate parameters.sh' | yourscriptoproceedresult.sh

Какие крнкретно параметры и их значения вам нужны, можно узнать предварительно потрассировав конкретный сервер. Не всегда бывает просто т.к. иногда (там где динамический контент) формат строки и параметры вещь динамическая и генерируются по неизвестному алгоритме. Тут я ничем помочь не могу.
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Re: HELP!!!!!

Post by Sabina »

dup
Last edited by Sabina on 22 Feb 2004 23:12, edited 1 time in total.
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Re: HELP!!!!!

Post by Sabina »

JustMax wrote:* *,2 * * * wget [wget parameters] http://site/path?'script to generate parameters.sh' | yourscriptoproceedresult.sh


Теперь все понятно где какие параметры.

JustMax wrote:Какие конкретно параметры и их значения вам нужны, можно узнать предварительно потрассировав конкретный сервер.


Не подскажете где можно попобробнее почитать как потрассировать. Это я тут к интервью готовлюсь на предмет cron jobs, поэтому и интересны практические применения, особенно в контексте web-а.

Спасибо,
Сабина[/quote]
Sam Adams
Уже с Приветом
Posts: 1316
Joined: 03 Jul 2003 06:02
Location: USA

Re: HELP!!!!!

Post by Sam Adams »

Что-то я совсем ничего не понимаю в ответах.

Sabina wrote:Если вы работаете с JSP можно создать файл, который будет <load-on-startup>, то есть в web.xml в <servlet> описание этого файла добавляется пустой таг <load-on-starup/>.


При чем здесь, вообще, JSP?

В этом файле вставляем в декларацию init, а в нем в отдельном треде скрипт, который идет на нужный вам сервер и делает что там надо.


по-моему, вопрос Жеки как раз и состоял в том, как сделать то, "что там надо" :)

Чтобы это делалось периодически все это суется в while (true) loop, а для установки интервала между запросами пользуемся sleepover и календарем.


Ой. А что, Thread.Sleep не поможет?
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Re: HELP!!!!!

Post by Sabina »

Sam Adams wrote:При чем здесь, вообще, JSP?


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

Сабина
User avatar
SergeN
Уже с Приветом
Posts: 122
Joined: 20 Jan 2003 04:59
Location: Albany, NY

Post by SergeN »

Всё делается проще на Визуал Бейсике 6.0. Через компонент Internet Explorer получаете содержимое страницы, обрабатываете и всё. Всё это делаете по таймеру.
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Re: HELP!!!!!

Post by Sabina »

Sam Adams wrote:Что-то я совсем ничего не понимаю в ответах.


Что же тут непонятного. В ответах ровно столько конкретики, сколько и в вопросе. Изначальных условий мало, чтобы давать конкретные ответы. Я думаю, если автору очень было бы нужно, он бы переспросил/уточнил и проч.

Меня же удивляет другое, что люди вклиниваются в этот топик, не с конкретным предложением ( а способов тут куча), а чисто с желанием навести критику на чужой совет.

Легче кому-то с Вижуал Бейсиком, так и слава богу. Не мешало бы поконретнее объяснить или хотя бы линк привести. Мне, например не легче, я им вообще не пользуюсь.

Критика не предмет Thread.sleep несущественная. Если вам охота, делайте так.

Сабина
User avatar
SergeN
Уже с Приветом
Posts: 122
Joined: 20 Jan 2003 04:59
Location: Albany, NY

Post by SergeN »

Ну извиняйте, мож вам еще спину вареньем намазать :D . К сожалению не могу потратить время на написание кода нужного вам. Если надо подробней: У меня есть исходники, которые просто данные выдирают из желтых страниц и суёт их в БД согласно настроенной пользователем схеме (я на это приложение месяц потратил). За много пиво могу переслать. А так ищите, где я в своё время уму-разуму в ВБ набирался. Вам сюда :umnik1: :
http://www.relib.com
или что породнее к ВБ:
http://msdn.microsoft.com
User avatar
Sabina
Уже с Приветом
Posts: 5669
Joined: 13 Oct 2000 09:01
Location: East Bay, CA

Post by Sabina »

SergeN wrote:Ну извиняйте, мож вам еще спину вареньем намазать :D


8O Надеюсь это адресовано автору вопроса.
А за линки я надеюсь он вам будет очень признаетелен. Если появиться еще здесь конечно.

Сабина
User avatar
Strannik223
Уже с Приветом
Posts: 569
Joined: 14 Dec 2003 04:06
Location: Львов->Киев->Торонто

Post by Strannik223 »

SergeN wrote: А так ищите, где я в своё время уму-разуму в ВБ набирался. Вам сюда :umnik1: :
http://www.relib.com
или что породнее к ВБ:
http://msdn.microsoft.com


<язвительно>
А разве можно на VB уму-разуму набраться? ;)))))
</язвительно>
Никакой разрухи нет. (с) Проф. Преображенский.
User avatar
SergeN
Уже с Приветом
Posts: 122
Joined: 20 Jan 2003 04:59
Location: Albany, NY

Post by SergeN »

<язвительно>
А разве можно на VB уму-разуму набраться? ;)))))
</язвительно>

Наверное, нет... Хотя работу в США с ним (но и не только) проще было мне найти, чем с Delphi.
Sam Adams
Уже с Приветом
Posts: 1316
Joined: 03 Jul 2003 06:02
Location: USA

Re: HELP!!!!!

Post by Sam Adams »

Sabina wrote:
Sam Adams wrote:Что-то я совсем ничего не понимаю в ответах.


Что же тут непонятного. В ответах ровно столько конкретики, сколько и в вопросе. Изначальных условий мало, чтобы давать конкретные ответы. Я думаю, если автору очень было бы нужно, он бы переспросил/уточнил и проч.

Меня же удивляет другое, что люди вклиниваются в этот топик, не с конкретным предложением ( а способов тут куча), а чисто с желанием навести критику на чужой совет.

Легче кому-то с Вижуал Бейсиком, так и слава богу. Не мешало бы поконретнее объяснить или хотя бы линк привести. Мне, например не легче, я им вообще не пользуюсь.

Критика не предмет Thread.sleep несущественная. Если вам охота, делайте так.

Сабина


Да просто не понял я, зачем нужен веб-сервер (и JSP) для того, чтобы раз в два часа получать какие-то данные с другого сервера. Напоминало вырывание гланд через ж. автогеном, извините :) Теперь понятно.

Return to “Вопросы и новости IT”