POST запрос не возвращает данные. После передачи параметров должна возвратиться страница sinonimus.ru/index.php/index.php#final_text с таблицей синонимов вместо этого возвращается стартовая и пустая. Прилагаю код ,помогите разобраться. В коде использую библиотеку XNet. Возможно вы знаете более эффективный код для запросов на подобные сайты. public string PostWebHTML(string regword) { using (var request = new HttpRequest()) { request.UserAgent = HttpHelper.ChromeUserAgent(); CookieDictionary cookie = new CookieDictionary(false); request.Cookies = cookie; request.Referer = "http://sinonimus.ru"; request.KeepAlive = true; var reqParams = new RequestParams(); reqParams["slovo"] = HttpHelper.UrlEncode(regword); reqParams["sin_dict=all"] = "all"; string content = request.Post("http://sinonimus.ru/index.php", reqParams).ToString(); return content; } }
Как по-человечески отправить структуру через TcpClient серверу? UPD: Можно в общем-то так: Code: NetworkStream nws = client.GetStream(); BinaryWriter bw = new BinaryWriter(nws); BinaryReader br = new BinaryReader(nws); byte[] buff = new byte[512]; send_packet pkt = new send_packet(); pkt.magic = magic; pkt.cmd = (int)command.MOVE_MOUSE; while (true) { bw.Write(pkt.magic); bw.Write(pkt.cmd); ...
День добрый, возможно написать скрипт в java, который бы работал из адресной строки и выполнял автоматическое нажатие кнопки "отправить" в заданное время? Речь идет об отправки сообщений вконтакте. Заранее спасибо
Доброго времени суток, написал свой проект с помощью ООП на C#, когда редактировал класс, натворил фигни и пришлось его удалить. Потом из Бэкапа копировал тот же код, но в уже новый созданый класс. Затем я подключили юзинги и мне выбило 30 ошибок, но подчеркунутых синим цветом. Если я пытаюсь запустить програму и игнорирую предупреждения - прога пашет, но вот вносить в нее изменения могу, а когда запускаю ничего не меняется, тоесть изменения не сохраняются.Ах да забыл, подчеркивает преимущественно самописные методы. КТо шарит, что с этим делать, как решить проблему?
Почему может быть такая ошибка? c# Имя типа или пространства имен "Text" отсутствует в пространстве имен "xNet" (пропущена ссылка на сборку?) Имя типа или пространства имен "Text" отсутствует в пространстве имен "xNet" (пропущена ссылка на сборку?)
Обычно это из-за того что не подключен модуль с этим классом/типом Text внутри. Скорее всего, поможет такая последовательность 1) Project > AddReference (Проект > Добавить ссылку) с выбором твоего этого модуля xNet 2) добавление модуля xNet.Text в список using в самом верху исходного кода. А вообще если ввести в гугл "Имя типа или пространства имен отсутствует в пространстве имен (пропущена ссылка на сборку?)", то можно увидеть много интересного на эту тему)
Подскажите как изменить код, если сайт раньше работал на http, а сейчас перешел на https с небольшими изменениями в структуре сайта и запросы не проходят, хотя реферер и пост данные я поменял? Code: using System.Text.RegularExpressions; using xNet.Net; class Checker { public static string Check(string name, string pass) { try { using (var req = new HttpRequest()) { while (true) { try { string proxy = Engine.GetProxy(); switch (GVars.ProxyType) { case 0: req.Proxy = HttpProxyClient.Parse(proxy); break; case 1: req.Proxy = Socks4ProxyClient.Parse(proxy); break; case 2: req.Proxy = Socks5ProxyClient.Parse(proxy); break; default: req.Proxy = HttpProxyClient.Parse(proxy); break; } req.Proxy.ConnectTimeout = GVars.TimeOut * 1000; req.Proxy.ReadWriteTimeout = req.Proxy.ConnectTimeout; req.UserAgent = HttpHelper.ChromeUserAgent(); HttpResponse resp; req.Referer = "http://сайт/"; req.AddParam("data", "action=user_login&module=login&page=home&user="+name+"&pass="+pass); resp = req.Post("http://сайт.php"); if(resp.ToString().Contains("Logout")) { return "good"; } else { return "bad"; } // конец запроса } catch { GVars.Error++; } } } } catch { return "error"; } } }
resp = req.Post("http://сайт.php"); Вот здесь нужно заменить http:// на https:// Либо, если у сайта стоит редирект со старой версии на новую, то задать атрибут req.AllowAutoRedirect = true;
Такой вопрос: у меня есть основной класс, в котором описано текстовое поле textpane на форме, есть другой класс в котором есть списки( jList ), содержащие в себе шрифты, начертание и размеры. В итоге в форме первого класса я нажимаю кнопку "шрифт", открывается форма второго класса со списками, я выбираю необходимые параметры шрифта и .... самое интересное... по кнопке ОК все должно записаться в переменную типа Font(например: Font selectedFont) и каким то образом отправиться в первый класс в аргумент к textPane.setFont(selectedFont). Помогите, научите как это сделать? Не получается по кнопке ОК второго класса(вторая форма) обратиться к объекту с первого класса(первой формы) чтобы назначить ему шрифт и закрыв вторую форму остаться на первой и продолжить работу с текстовым полем(например продолжить набирать в ней текст). Чтобы было более понятно, что именно хочется сделать, можно открыть виндовый блокнот, там есть опция "шрифт", соответственно сам блокнот это первая форма, опция Шрифт это вторая форма... пытаюсь реализовать то же самое у себя
Если я верно Вас понял, то необходимо у каждого класса создать public-свойства, которые будут вызываться и изменять нужные данные (какие данные изменить - решить Вам). Но лучше увидеть 1 раз код.. Возможно стоит также присмотреться к с-ву формы Owner (Form.Owner) Также почитайте подробно про делегаты. Надеюсь натолкнул на что-то
Код основной формы приложения (основные моменты: меню "шрифт" вызывает форму выбора шрифта (возможно код работать не будет т.к. излишки удалял на глазок) ) Code: public class MainFrame extends JFrame { public static String filePath = null; //переменная, которая будет хранить в себе адрес и имя открываемого файла public static JPanel contentPane; public static String noFileTitleText = "Безымянный"; public static String titleText = "MyNotepad v.1.2"; public static JTextPane textPane; public static Font sFont; public static void main(String[] args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException e1) { e1.printStackTrace(); } catch (InstantiationException e1) { e1.printStackTrace(); } catch (IllegalAccessException e1) { e1.printStackTrace(); } catch (UnsupportedLookAndFeelException e1) { e1.printStackTrace(); } JFrame.setDefaultLookAndFeelDecorated(true); EventQueue.invokeLater(new Runnable() { public void run() { try { MainFrame frame = new MainFrame(); frame.setLocationRelativeTo(null); frame.setVisible(true); //frame.setIconImage(new ImageIcon("C:\\Images\Icon.png").getImage()); //Установка иконки приложения } catch (Exception e) { e.printStackTrace(); } } }); } /** * Создание frame. */ public MainFrame() { setTitle(noFileTitleText + " - " + titleText); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(0, 0, 750, 600); //setSize(770, 600); final JTextPane textPane = new JTextPane() { // public static final long serialVersionUID = 1; public boolean getScrollableTracksViewportWidth() { return true; } }; sFont = new Font("Tahoma", Font.PLAIN, 18); textPane.setFont(sFont); JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); JMenuItem menuItemExit = new JMenuItem("Выход"); menuItemExit.setIcon(new ImageIcon(MainFrame.class.getResource("/images/menuIcons/menu_exit.png"))); menuItemExit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }); final JPanel contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JMenu MainMenu = new JMenu("Файл"); menuBar.add(MainMenu); final JScrollPane scrollPane = new JScrollPane(textPane); scrollPane.setLocation(0, 0); scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS); scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); scrollPane.setSize(734,541); contentPane.add(scrollPane); JMenu menuFormat = new JMenu("Формат"); menuBar.add(menuFormat); JMenuItem menuItemFont = new JMenuItem("Шрифт"); menuItemFont.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { fc fc = new fc(); fc.setVisible(true); } catch (Exception e1) { e1.printStackTrace(); } } }); menuFormat.add(menuItemFont); } Код второй формы - выбор шрифта(основной момент: создание переменной типа Font и записи в нее значений выбранных из списков, переменную типа Font надо передать в первую форму и применить к текстовому полю.... не получается ) Code: public class fc extends JDialog { private JPanel contentPane; String[] fontNames; String family; //имена шрифтов int style; //стиль начертания шрифта int size; //размер шрифта public static Font selectedFont; //Шрифт, которому они соответствуют(3 параметра выше) public Integer Sizes[] = {8, 10, 11, 12, 14, 16, 18, 20, 24, 30, 36, 40, 48, 60, 72}; //список всевозможных размеров шрифта static final String styleNames[] = new String[] {"Plain", "Bold", "Italic", "BoldItalic"}; //Названия начертаний из меню "Style" static final Integer[] styleValues = new Integer[] {new Integer(Font.PLAIN), new Integer(Font.ITALIC), new Integer(Font.BOLD), new Integer(Font.BOLD + Font.ITALIC)}; //Значения, соответствующие различным названиям JLabel lblPreviewText; JList fontList; /** запуск */ public static void main(String[] args) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException e1) { e1.printStackTrace(); } catch (InstantiationException e1) { e1.printStackTrace(); } catch (IllegalAccessException e1) { e1.printStackTrace(); } catch (UnsupportedLookAndFeelException e1) { e1.printStackTrace(); } JFrame.setDefaultLookAndFeelDecorated(true); EventQueue.invokeLater(new Runnable() { public void run() { try { fc fc = new fc(); fc.setLocationRelativeTo(null); fc.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** *Создание frame. */ public fc() { //setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 471, 392); contentPane = new JPanel(); contentPane.setLayout(null); setContentPane(contentPane); setModal(true); setTitle("Шрифт"); setResizable(false); setLocationRelativeTo(null); //Выясняем, какие шрифты доступны в системе GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment(); fontNames = env.getAvailableFontFamilyNames(); //Устанавливаем начальные значения свойств style = Font.PLAIN; size = 14; selectedFont = new Font(family, style, size); JScrollPane scrollPane = new JScrollPane(fontList); scrollPane.setBounds(33, 31, 165, 201); contentPane.add(scrollPane); scrollPane.setViewportView(fontList); JButton btnOk = new JButton("OK"); btnOk.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { MainFrame.textPane.setFont(selectedFont); dispose(); } }); btnOk.setBounds(237, 316, 89, 29); contentPane.add(btnOk); JButton btnCancel = new JButton("Отмена"); btnCancel.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { dispose(); //Закрытие окна выбора шрифтов, без закрытия всего приложения } }); btnCancel.setBounds(342, 316, 89, 29); contentPane.add(btnCancel); } }
нашел ошибку: вместо final JTextPane textPane = new JTextPane(), надо было указывать просто textPane = new JTextPane(). Получается я создавал новый экземпляр текстового поля, он был не доступен другому классу. А тот который был доступен, не имел по сути физической реализации...
Всё, с проблемой выше разобрался. Однако возникла другая - корректен ли этот кусок кода: Spoiler: Код C# Code: using (var request = new HttpRequest()) { var urlParams = new RequestParams(); urlParams["info_head1"] = "inf_payload1"; urlParams["info_head2"] = "inf_payload2"; string content = request.Get("некий_домен.ru", urlParams).ToString(); Т. к. я, послав GET запрос с помощью этого кода на домен, в логах запрос не нашёл.
Как можно получить значение text по найденному классу ? Code: document.getElementsByClassName("login-input")[0].get.text;
Короче, такая фигня Есть форма, на ней picturebox, в котором открывается изображение по openfiledialog и уберфича для 1970 года-поворот изображения, НО! Проблема с поворотом широкоформатных изображений-либо обрезается при повороте на 90%, либо просто шакально сжимается Колдовал с autosize и pictureboxsize и все такое, но к желаемому результату не пришел Вот, собственно, кусок кода, отвечающий за поворот Code: pictureBox1.Image.RotateFlip(RotateFlipType.Rotate90FlipNone); pictureBox1.Refresh() С остальным проблем нет, не считая функции увеличения-уменьшения, но сперва надо с поворотом разобраться
Хотя это и не шарп а JS Ваш вопрос уже содержит ответ? getter необязтаельно ' document.getElementsByClassName('asd')[0].textContent