Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 13.10.2014
Сообщений: 45

Запись ноды в ячейку таблицы бд sql(HtmlAgilityPack)

22.03.2019, 03:35. Показов 984. Ответов 3

Студворк — интернет-сервис помощи студентам
C#
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
using HtmlAgilityPack;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Text.RegularExpressions;
 
namespace WindowsFormsApp1
{
 
    public partial class Form1 : Form
    {
 
        public Form1()
        {
            InitializeComponent();
        }
    
 
        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            
        }
 
        private async void Button1_Click(object sender, EventArgs e)
        {
           var htmlWeb = new HtmlWeb();
            string url = String.Concat("https://autoreview.ru/arcap/all");
 
            var doc = htmlWeb.Load(url);
 
                foreach (HtmlNode link in doc.DocumentNode.SelectNodes("//a[@class='all-wrapp-item green']//p//text()[normalize-space()]"))
                {
                    listBox1.Items.Add(link.OuterHtml);
                }
                foreach (HtmlNode link in doc.DocumentNode.SelectNodes("//a[@class='all-wrapp-item green']//*[@class='rating-text' and text()]//text()[normalize-space()]"))
                {
                    listBox2.Items.Add(link.OuterHtml);
                }
        }
    }
Написал код, прекрасно парсит то что мне нужно, но не могу прикрутить запись результата парсинга в базу данных sql,пытаюсь для этого приспособить данный код
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
SqlConnection sqlConnection;
            string connectionString = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\telemetry.mdf;Integrated Security=True";
            sqlConnection = new SqlConnection(connectionString);
            await sqlConnection.OpenAsync();
            SqlDataReader sqlReader = null;
            if (label1.Visible)
                label1.Visible = false;
            if (!string.IsNullOrEmpty(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox1.Text) &&
                !string.IsNullOrEmpty(textBox2.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
            {
                SqlCommand command = new SqlCommand("INSERT INTO [text] (avto,ball)VALUES(@avto,@ball)", sqlConnection);
                command.Parameters.AddWithValue("avto", textBox1.Text);
                command.Parameters.AddWithValue("ball", textBox2.Text);
                await command.ExecuteNonQueryAsync();
 
            }
            else
            {
                label1.Visible = true;
                label1.Text = " Поля 'Марка авто','автономер' должны быть заполнены!";
 
            }
        }
Перерыл все сайты, включая официальный сайт html agility pack, так и не нашел решение проблемы.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.03.2019, 03:35
Ответы с готовыми решениями:

HtmlAgilityPack почему то ищет по документу вместо выбранной ноды
Привет, пытаюсь работать с HtmlAgilityPack но замечаю странное поведение. Допустим я делаю так: var web = new HtmlWeb(); ...

Прочитать одну ячейку таблицы SQL
Здравствуйте! Мне нужно вывести на textBox содержании одной ячейки из таблицы SQL. Тип ячейки nchar.

Вытащить картинку из SQL в ячейку таблицы
Вообщем сабж, не могу вытащить картинку из SQL БД в нужную мне ячейку таблицы. Задача такая: есть некий шаблон сайта, на default странице...

3
Эксперт .NET
 Аватар для Usaga
14314 / 9399 / 1355
Регистрация: 21.01.2016
Сообщений: 35,437
22.03.2019, 08:15
Levsha34, и что у вас не получается мы должны сами догадаться?
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
22.03.2019, 09:10
какая суть использования асинхронности тут?
если распаршенные данные хранятся в листбоксах, зачем записывать что-то из текстбоксов?
насколько я помню, то в AddWithValue нужно использовать переменную, а не имя поля, то есть @avto.
строка с проверкой избыточна, IsNullOrWhiteSpace и IsNullOrEmpty выпоняют аналогичные задачи, но первый является новым методом, так что оставить можно только его.
0
0 / 0 / 1
Регистрация: 13.10.2014
Сообщений: 45
22.03.2019, 17:29  [ТС]
C#
1
2
3
4
foreach (HtmlNode link in doc.DocumentNode.SelectNodes("//a[@class='all-wrapp-item green']//*[@class='rating-text' and text()]//text()[normalize-space()]"))
                {
                    listBox2.Items.Add(link.OuterHtml);
                }
Мне нужно сохранять нод не в листбокс а в sql базу данных, это у меня как раз и не получается
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.03.2019, 17:29
Помогаю со студенческими работами здесь

Запись в определенную ячейку таблицы Access
Здравствуйте! Прошу помочь, как обратиться к ячейке таблицы? Необходимо, что бы при нажатии на Форме некой Кнопки текст из некого Поля...

Определение ноды выбранной после падения активной ноды кластера
Предположим есть 3 ноды, активная нода падает, какая из двух будет выбрана активной?

Запись нескольких значений из CheckBoxList в одну ячейку таблицы базы данных
Всем доброго времени суток. На данный момент у меня, при выборе из CheckBoxList нескольких значений и нажатии кнопки для отправки...

Sql-запрос. Как добавить значение DateTimePicker в ячейку таблицы типа Time?
Доброе, Вам, время суток! Подскажите, пожалуйста, как добавить в ячейку таблицы(тип ячейки - Время) значение из DateTimePicker? Код...

Удалить запись из таблицы БД SQL Server
Здраствуйте. При вводе данных в sql server ввожу 2 или более одинаковые записи. После чего вылезает такая ошибка: После этого хочу удалить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru