powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Задачка - помогите новичку :)
14 сообщений из 14, страница 1 из 1
Задачка - помогите новичку :)
    #32601742
Alexander Kolotinets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго всем времени суток

Есть задачка, которую я хочу реализовать на java:
необходимо считывать инфу с html - странички и отправлять ее (инфу) по smtp клиенту. Т.е. задача разбивается на несколько этапов:
1. Установить соединение
2. Получить содержимое html - страницы
3. Отпарсить страничку для извлечения необходимых данных
4. smtp - отправка адрессату

Помогите, плз, новичку, какие классы и методы необходимо использовать для решения этой задачи
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32601779
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander KolotinetsДоброго всем времени суток

Есть задачка, которую я хочу реализовать на java:
необходимо считывать инфу с html - странички и отправлять ее (инфу) по smtp клиенту. Т.е. задача разбивается на несколько этапов:
1. Установить соединение
2. Получить содержимое html - страницы
3. Отпарсить страничку для извлечения необходимых данных
4. smtp - отправка адрессату

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

1. java.net.Socket
2. получить Input/OutputStream, с их помощью получить чего надо (html)
3. вручную (свой код)
4. com.oreilly.servlet.MailMessage
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32601869
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имхо,
3. вручную (свой код)
- самая сложная часть.
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32601905
Alexander Kolotinets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я думаю, для универсальности, неплохо бы описать исходную страничку в xml - тогда и парсить ее проще, и подход гибче.
Но опять - таки это в теории я так думаю, практически пока в лоб не знаю как реализовать :)
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32601918
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Timmимхо,
3. вручную (свой код)
- самая сложная часть.

вообще ничего сложного. со страницы он будет брать определенный
текст.
например, чтобы получить список всех форумов со страницы
этого сайта:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
  public static List getForumList() {
    List list = new ArrayList();

    try {
      String pageContent = getPageContent(HTTPPaths.FORUM_LIST, "Powered by ActualForum");

      int pos = pageContent.indexOf("<A HREF=\"actualtopics.aspx?bid=");
      while (pos != -1) {
        int p1 = pageContent.indexOf("?bid=", pos);
        if (p1 != -1) {
          p1 = p1 + 4;
          int p2 = pageContent.indexOf("\"", p1);
          if (p2 != - 1 ) {
            String fid = pageContent.substring(p1 +  1 , p2).trim();
            int p3 = pageContent.indexOf("<", p2);
            if (p3 != - 1 ) {
              String fn = pageContent.substring(p2 +  2 , p3);
              Forum forum = new Forum();
              forum.setId(Integer.parseInt(fid));
              forum.setName(fn.trim());
              list.add(forum);
            }
          }
        }

        pos = pageContent.indexOf("<A HREF=\"actualtopics.aspx?bid=", p1);
      }
    } catch (IOException e) {
      e.printStackTrace();
    }

    return list;
  }
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32601961
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Гpacoff Timmимхо,
3. вручную (свой код)
- самая сложная часть.

вообще ничего сложного. со страницы он будет брать определенный
текст.
например, чтобы получить список всех форумов со страницы
этого сайта:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
  public static List getForumList() {
    List list = new ArrayList();

    try {
      String pageContent = getPageContent(HTTPPaths.FORUM_LIST, "Powered by ActualForum");

      int pos = pageContent.indexOf("<A HREF=\"actualtopics.aspx?bid=");
      while (pos != -1) {
        int p1 = pageContent.indexOf("?bid=", pos);
        if (p1 != -1) {
          p1 = p1 + 4;
          int p2 = pageContent.indexOf("\"", p1);
          if (p2 != - 1 ) {
            String fid = pageContent.substring(p1 +  1 , p2).trim();
            int p3 = pageContent.indexOf("<", p2);
            if (p3 != - 1 ) {
              String fn = pageContent.substring(p2 +  2 , p3);
              Forum forum = new Forum();
              forum.setId(Integer.parseInt(fid));
              forum.setName(fn.trim());
              list.add(forum);
            }
          }
        }

        pos = pageContent.indexOf("<A HREF=\"actualtopics.aspx?bid=", p1);
      }
    } catch (IOException e) {
      e.printStackTrace();
    }

    return list;
  }


С заданной страницы - в приницпе да, не сложно. Я имел ввиду в общем случае, когда необходимо выбрать то, что на этапе писанины неизвестно.
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32601979
Фотография А.Гpacoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TimmС заданной страницы - в приницпе да, не сложно. Я имел ввиду в общем случае, когда необходимо выбрать то, что на этапе писанины неизвестно.

искуственный интеллект?

зачем писать то, что будет выбирать неизвестно что?
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32602012
Alexander Kolotinets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо всем за отклик, пробую на практике, и вот незадача... по описалову класса java.net.Socket можно:

java.net.socket = new mySocket("www.sql.ru", 3128);

не проходит :( в доке можно в конструктор передавать строковый <host> и int port.

Help ! А еще дока на java.sun.com очень скудная - нет примеров исполоьзования объектов - новичку тяжеловато будет разобраться :(
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32602021
Alexander Kolotinets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sorry, обшибся:
спасибо всем за отклик, пробую на практике, и вот незадача... по описалову класса java.net.Socket можно:

java.net.socket = new mySocket("www.sql.ru", 3128);

Socket mySocket = new Socket("www.sql.ru", 3128);


не проходит :( в доке можно в конструктор передавать строковый <host> и int port.

Help ! А еще дока на java.sun.com очень скудная - нет примеров исполоьзования объектов - новичку тяжеловато будет разобраться :(
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32602024
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexander Kolotinetsспасибо всем за отклик, пробую на практике, и вот незадача... по описалову класса java.net.Socket можно:

java.net.socket = new mySocket("www.sql.ru", 3128);

не проходит :( в доке можно в конструктор передавать строковый <host> и int port.

Help ! А еще дока на java.sun.com очень скудная - нет примеров исполоьзования объектов - новичку тяжеловато будет разобраться :(

может Socket s = new Socket(...)?
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32602033
Alexander Kolotinets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Timm Alexander Kolotinetsспасибо всем за отклик, пробую на практике, и вот незадача... по описалову класса java.net.Socket можно:

java.net.socket = new mySocket("www.sql.ru", 3128);

не проходит :( в доке можно в конструктор передавать строковый <host> и int port.

Help ! А еще дока на java.sun.com очень скудная - нет примеров исполоьзования объектов - новичку тяжеловато будет разобраться :(

может Socket s = new Socket(...)?

ну да, обшибку я заметил (обчепятался), но компилятор не пущает передать в конструкторе параметры :(
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32602040
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Гpacoff
искуственный интеллект?

Нет, зачем.
А.Гpacoffзачем писать то, что будет выбирать неизвестно что?
Может надо человеку! ))
Какой нибудь нечеткий поиск реализовать например... И вообще, парсить что либо вручную - почти всегда непросто.
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32602045
Фотография Timm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну да, обшибку я заметил (обчепятался), но компилятор не пущает передать в конструкторе параметры :(

Что пишет?
...
Рейтинг: 0 / 0
Задачка - помогите новичку :)
    #32602049
Alexander Kolotinets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все, нашел,
mySocket = new Socket("www.sql.ru", 3128) надо было поместить в блок
try {
}
catch (...) {
}

говорю же - новичек :)
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Задачка - помогите новичку :)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]