Парсинг

 
 
 
Сообщения:32
import javax.swing.text.Document;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.net.URL;
public class SimpleBot {

private static Document getPage() throws Exception {
String url = "https://horo.mail.ru/prediction/week/#other_zodiac_sign";//
Document page = Jsoup.parse(new URL(url), 2000);//
return page;//
}
private static Pattern pattern = Pattern.compile("\\d{2}\\.\\d{2}"),CASE_INSENSITIVE;
private static String getDateFromString(String stringDate) throws Exception {
Matcher matcher = pattern.matcher(stringDate);//
if (matcher.find()) {//
return matcher.group();//
}
throw new Exception("Obloms");//
}
}
Код такой. Не хочет импортировать Jsoup библиотеку,что с ним сделать?
 
 
Сообщения:453
значит ее нет в зависимостях проекта
 
 
Сообщения:32
public void actionPerformed(ActionEvent event) {
if (message.getText().trim().length() > 0) {//замер строки без пробелов
dialogue.append(message.getText()+"\n");
dialogue.append(TITLE_OF_PROGRAM.substring( 0, 9)+
sbot.sayInRetyrn((message.getText()) ,ai.isSelected()) +"\n");
}
Спасибо за прошлый совет!
append- выдает на этом методе ошибку,что не так?
импортировал библиотеки
mport java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.text.*; // for StyledDocument
import java.lang.*;
а он все равно как ошибка идет!
 
 
Сообщения:176
Используйте кнопку "Код". Тяжело читать код без форматирования. И нужен кусок кода, где объявляются переменные dialogue, message.
 
 
Сообщения:32
dialogue = new JTextPane();//
dialogue.setEditable(false);//
dialogue.setContentType("text/html");

message = new JTextField();
message.addActionListener(this)
 
 
Сообщения:176
У класса JTextPane нет метода append()
 
 
Сообщения:32
Заменил append на setText(так можно?) но код не работает!
у меня есть класс для бота главный и класс для парсинга,хочу чтобы передавал в ответ на сообщения ответ с сайта,а он все ломается!

класс бота

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.text.*; // for StyledDocument
import java.lang.*;

class SimpleChatBot extends JFrame implements ActionListener {

final String TITLE_OF_PROGRAM = "Chatter: simple chatbot";
final int START_LOCATION = 200;//
final int WINDOW_WIDTH = 350;
final int WINDOW_HEIGHT = 450;
final String CHB_AI = "AI";//
final String BTN_ENTER = "Enter";//

JTextPane dialogue; // area for dialog
JCheckBox ai; // enable/disable AI
JTextField message; // field for entering messages
SimpleBot sbot; // chat-bot class (in bot package)
SimpleAttributeSet botStyle; // style bot text

public static void main(String[] args) {
new SimpleChatBot();
}

/**
* Constructor:
* Creating a window and all the necessary elements on it
*/
SimpleChatBot() {
setTitle(TITLE_OF_PROGRAM);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setBounds(START_LOCATION, START_LOCATION, WINDOW_WIDTH, WINDOW_HEIGHT);//
// area for dialog
dialogue = new JTextPane();//
dialogue.setEditable(false);//
dialogue.setFont(Font.getFont("text/html"));//
JScrollPane scrollBar = new JScrollPane(dialogue);//заворачиваем в скролл диалог
// style for bot messages
botStyle = new SimpleAttributeSet();//&
StyleConstants.setItalic(botStyle, true);
StyleConstants.setForeground(botStyle, Color.blue);
//StyleConstants.setAlignment(botStyle, StyleConstants.ALIGN_RIGHT);
// panel for checkbox, message field and button
JPanel bp = new JPanel();
bp.setLayout(new BoxLayout(bp, BoxLayout.X_AXIS));//&компановщик по горизонтали
ai = new JCheckBox(CHB_AI);//&
ai.doClick();//&
message = new JTextField();
message.addActionListener(this);
JButton enter = new JButton(BTN_ENTER);
enter.addActionListener(this);
// adding all elements to the window
bp.add(ai);
bp.add(message);
bp.add(enter);
add(BorderLayout.CENTER, scrollBar);//добавка по центру скролла
add(BorderLayout.SOUTH, bp);
setVisible(true);
sbot = new SimpleBot(); // creating bot object
}

/**
* Listener of events from message field and enter button
*/

public void actionPerformed(ActionEvent event) {
if (message.getText().trim().length() > 0) {//замер строки без пробелов
dialogue.setText(message.getText()+"\n");
dialogue.setText(TITLE_OF_PROGRAM.substring( 0, 9)+
SimpleBot.sayInRetyrn((message.getText()) ,ai.isSelected(),) +"\n");



}
message.setText("");
message.requestFocusInWindow();
}
}

класс парсинга
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import java.net.URL;

public class SimpleBot {


private static Document getPage() throws Exception {
String url = "https://horo.mail.ru/prediction/week/#other_zodiac_sign";//
Document page = Jsoup.parse(new URL(url), 2000);//
return page;//
}

public static void sayInRetyrn(String text, boolean selected, SimpleChatBot args) throws Exception {
System.out.println(getPage());
}
}
как вернуть данные из getPage() в виде ответа?
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет