Пишем парсеры в Zennoposter на C#. Инструкция для новичков от новичка

Gavrosh

Client
Регистрация
08.10.2016
Сообщения
64
Благодарностей
21
Баллы
8

Ikigai

Client
Регистрация
13.12.2016
Сообщения
275
Благодарностей
27
Баллы
28
1) Какое преимущество xPath перед сбором по регуляркам с Page.Dom ? Если можно дайте пожалуста развернутый ответ.

Статья для новичков про парсинг, но ни слова про использование проксей. Сегодня писал парсер и не заюзал прокси , в итоге закрыли мне лавочку =).

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

volody00

Client
Регистрация
06.09.2016
Сообщения
792
Благодарностей
810
Баллы
93
1) Какое преимущество xPath перед сбором по регуляркам с Page.Dom ? Если можно дайте пожалуста развернутый ответ.

Статья для новичков про парсинг, но ни слова про использование проксей. Сегодня писал парсер и не заюзал прокси , в итоге закрыли мне лавочку =).

2) Может кто пояснить какая польза от прокси чекера ? Я думал он дастает халявные прокси , но блин они же ни один сайт не открывают. В чем их смысл тогда?
нет разницы, использовать регулярки или xpath. Если вам удобнее работать с регулярками, то почему бы и нет. Прокси устанавливаются с помощью instance.SetProxy(username:password@ip:port); при этом их можно брать из таблицы/списка, затем проверять, загрузился ли сайт и если нет, то брать следующие.

на счет прокси чекера ничего не могу сказать
 

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
@volody00 внимательно прочитал статью, но так и не понял, зачем тут используется Epplus?
Формулы не считаем, картинки не вставляем, пишем обычный csv текст фактически.
 

radv

Client
Регистрация
11.05.2015
Сообщения
3 673
Благодарностей
1 855
Баллы
113
Для новичков вполне достойная статья, хотя похожее можно собрать из нескольких других статей на форуме.
так и не понял, зачем тут используется Epplus?
Epplus не обязательно использовать для работы с формулами. Я например использую ее для работы с разными листами таблицы (зенка пока это не умеет), можно и с одним листом работать, чтобы код писать в одном стиле, не важно сколько листов будет использоваться.
 
  • Спасибо
Реакции: Philipp

volody00

Client
Регистрация
06.09.2016
Сообщения
792
Благодарностей
810
Баллы
93
@volody00 внимательно прочитал статью, но так и не понял, зачем тут используется Epplus?
Формулы не считаем, картинки не вставляем, пишем обычный csv текст фактически.
Да можно было бы и обычными таблицами пользоваться.
 

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
Я например использую ее для работы с разными листами таблицы
Как вариант, но тут про это не сказано.
Сфер применений много, но стандартный функционал дублировать, не понял зачем, поэтому и спросил.
 

radv

Client
Регистрация
11.05.2015
Сообщения
3 673
Благодарностей
1 855
Баллы
113
но стандартный функционал дублировать, не понял зачем, поэтому и спросил.
Просто иногда стандартный функционал глючить может (было у меня такое пару раз, после обновления версии зенки), а так сразу привыкаешь работать с таблицами, и можно копировать в свои сниппеты для использования в других проектах, и при необходимости добавлять дополнительный функционал (форматирование, доп. листы и т.п.)
 
  • Спасибо
Реакции: specialist

Gang

Client
Регистрация
04.04.2010
Сообщения
577
Благодарностей
313
Баллы
63
1) Какое преимущество xPath перед сбором по регуляркам с Page.Dom ? Если можно дайте пожалуста развернутый ответ.

Статья для новичков про парсинг, но ни слова про использование проксей. Сегодня писал парсер и не заюзал прокси , в итоге закрыли мне лавочку =).

2) Может кто пояснить какая польза от прокси чекера ? Я думал он дастает халявные прокси , но блин они же ни один сайт не открывают. В чем их смысл тогда?
1. xPath в разы гибче для парсинга html чем регулярки. Особенно это можно прочувствовать на сайтах со сложной версткой, например Facebook.
2. Проксичекер парсит паблик прокси. Они как правило очень медленные и быстро умирают. Их обычно используют для всякого рода чекеров на post/get запросах, где нужно сделать 1-2 запроса и выбросить проксю. Для ботов на основе браузера, они бесполезны. Для браузерного трафика с прокгрузкой картинок, скриптов, css и т.д нужны скоростные покупные прокси.
 
  • Спасибо
Реакции: Ikigai

Ant55

Client
Регистрация
20.01.2019
Сообщения
2
Благодарностей
0
Баллы
1
есть видео уроки по XPath
https://cloud.mail.ru/public/2dMD/5kV9aC2hc
также есть по С# уроки от него же
и по написанию спамеров
кому нужно пишите в лс кину остальные ссылки. Видео около15 гиг объемом
Так и не нашёл как в личку писать
Буду очень признателен за ссылки:-)
 

digitalboy228

Client
Регистрация
27.09.2018
Сообщения
51
Благодарностей
5
Баллы
8
Если данные подгружаются значит их можно выдернуть запросом.
А есть ли конкретный пример? Был бы признателен.

Допустим в каком-нибудь яндексе.
Просто из того что удалось нагуглить, get - запросом , нельзя получить данные , которые скрываются за выполнением скриптов.
 

Шива

Client
Регистрация
05.02.2018
Сообщения
1 084
Благодарностей
339
Баллы
83
А есть ли конкретный пример? Был бы признателен.

Допустим в каком-нибудь яндексе.
Просто из того что удалось нагуглить, get - запросом , нельзя получить данные , которые скрываются за выполнением скриптов.
иногда нужно выполнять скрипты.
Иногда разбирать json
 

digitalboy228

Client
Регистрация
27.09.2018
Сообщения
51
Благодарностей
5
Баллы
8
иногда нужно выполнять скрипты.
Иногда разбирать json
Это я понял , что нужно выполнить, вопрос в том как это сделать?) В запросах.

Например в авторизации на Яндекс Дзен, допустим.
Пытался получить страницу get - запросом. но не удалось этого сделать и выпарсить данные канала.
Так как некоторые данные скрываются "quote"key"quote" ( не дословно, пример) , и что с этим делать не понятно.
 
  • Спасибо
Реакции: Saavdav

Brabus_bots

Client
Регистрация
13.04.2019
Сообщения
633
Благодарностей
425
Баллы
63

booms1

Client
Регистрация
20.08.2019
Сообщения
134
Благодарностей
18
Баллы
18
Код:
/начало: подключение таблицы
var package = new ExcelPackage(new FileInfo(@"E:\zennoposter - проекты\для конкурса\наша табличка.xlsx")); //путь к табличке
ExcelWorksheet tabletest = package.Workbook.Worksheets[1]; //где tabletest - имя(любое) – лучше вообще никогда не менять, а 1 - номер листа в excel
//конец: подключение таблицы
Парни, как путь до таблицы задать в переменной?
 

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 868
Благодарностей
1 114
Баллы
113
Код:
/начало: подключение таблицы
var package = new ExcelPackage(new FileInfo(@"E:\zennoposter - проекты\для конкурса\наша табличка.xlsx")); //путь к табличке
ExcelWorksheet tabletest = package.Workbook.Worksheets[1]; //где tabletest - имя(любое) – лучше вообще никогда не менять, а 1 - номер листа в excel
//конец: подключение таблицы
Парни, как путь до таблицы задать в переменной?
C#:
project.Variables["Название переменной в которой путь к таблице"].value
Так путь попробуйте заменить
 
  • Спасибо
Реакции: booms1

booms1

Client
Регистрация
20.08.2019
Сообщения
134
Благодарностей
18
Баллы
18

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 868
Благодарностей
1 114
Баллы
113
  • Спасибо
Реакции: booms1

booms1

Client
Регистрация
20.08.2019
Сообщения
134
Благодарностей
18
Баллы
18
Без ковычек, в ковычках будет считаться не как перемееная, а как текст
Компиляция кода Ошибка в действии "CS1061" ""ZennoLab.InterfacesLibrary.ProjectModel.ILocalVariable" не содержит определение для "value". Не удалось найти метод расширения "value", принимающий первый аргумент типа "ZennoLab.InterfacesLibrary.ProjectModel.ILocalVariable" (пропущена директива using или ссылка на сборку?)". [Строка: 1; Cтолбец: 69]

C#:
var package = new ExcelPackage(new FileInfo(@project.Variables["c"].value));


var package = new ExcelPackage(new FileInfo(project.Variables["c"].value));
это при таких вариантах
 

booms1

Client
Регистрация
20.08.2019
Сообщения
134
Благодарностей
18
Баллы
18

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 868
Благодарностей
1 114
Баллы
113
  • Спасибо
Реакции: booms1

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 538
Баллы
113
Компиляция кода Ошибка в действии "CS1061" ""ZennoLab.InterfacesLibrary.ProjectModel.ILocalVariable" не содержит определение для "value". Не удалось найти метод расширения "value", принимающий первый аргумент типа "ZennoLab.InterfacesLibrary.ProjectModel.ILocalVariable" (пропущена директива using или ссылка на сборку?)". [Строка: 1; Cтолбец: 69]
Value необходимо писать с большой буквы.
 
  • Спасибо
Реакции: booms1 и Valandersi

Valandersi

Client
Регистрация
19.01.2015
Сообщения
1 868
Благодарностей
1 114
Баллы
113
  • Спасибо
Реакции: booms1

booms1

Client
Регистрация
20.08.2019
Сообщения
134
Благодарностей
18
Баллы
18
Такой вариант сработал:
var package = new ExcelPackage(new FileInfo(project.Variables["c"].Value));
Спасибо
 
  • Спасибо
Реакции: ParadoxRU и Valandersi

bangmother

Новичок
Регистрация
27.04.2020
Сообщения
1
Благодарностей
0
Баллы
1
есть видео уроки по XPath
https://cloud.mail.ru/public/2dMD/5kV9aC2hc
также есть по С# уроки от него же
и по написанию спамеров
кому нужно пишите в лс кину остальные ссылки. Видео около15 гиг объемом
Добрый день. Не могу написать в ЛС, можете пожалуйста скинуть ссылки?
 

paska

Client
Регистрация
12.11.2019
Сообщения
13
Благодарностей
2
Баллы
3
  • Спасибо
Реакции: lbvf65

lbvf65

Client
Регистрация
20.08.2020
Сообщения
438
Благодарностей
113
Баллы
43

TeslaCo

Client
Регистрация
25.10.2016
Сообщения
61
Благодарностей
2
Баллы
8
Здравствуйте, подскажите как после подключении второй вкладки из xlsx
C#:
var package = new ExcelPackage(new FileInfo(@"C:\contt\price.xlsx")); //путь к табличке
ExcelWorksheet tabletest = package.Workbook.Worksheets[2]; //где tabletest - имя(любое) – лучше вообще никогда не менять, а 1 - номер листа в excel
//конец: подключение таблицы
сохранить всю информацию с этой вкладки или в файл, или привязать к таблице в zenno? заранее благодарен за помощь.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)