Помогите с кодом C#

  • Автор темы Автор темы Andron
  • Дата начала Дата начала

Andron

Client
Регистрация
08.04.2015
Сообщения
222
Реакции
10
Баллы
18
Нужно как-то применить код в зене. Постоянно выдаёт ошибки.
Данные: список с ссылками
страница сайта
Задача: Проверить есть ли на сайте какая либо из ссылок. Желательно что бы ещё в результате указывало какая именно, но если нет то не критично.

Решил взять в переменную dom-модель страницы и её обрабатывать скриптом:
Код:
Развернуть Свернуть Копировать
public bool IsLinkExist()
  {
   string[] project.Lists["all_links"]; //мои ссылки
   string project.Variables["html"].Value; // исходный код страницы
   foreach (string link in your18Links) // для каждой моей ссылки ...
   {
    if(pageText.Contains(link)) // проверяем, если ссылка в таком виде содерится на странице, то
    {
     return true;
    }  
   }
   return false;
  }

Постоянно выдает ошибки типа ожидалась ";" или недопустимый термин. Хотя вроде код правильный.

В C# не шарю с кодом помог знакомый прогер который с зеной не знаком.
Спасибо
 
В zenno обычный компилятор кода из Net.framework. Ваш знакомый программист должен разобраться где проблема в коде.
 

Вложения

  • лог.jpg
    лог.jpg
    56,6 KB · Просмотры: 330
Начнем с того что код изначально с неправильной логикой. foreach который после проверки одной ссылки прерывается и выводит true или false.
Почему не пользуетесь стандартным экшеном? Можно же ссылки искать также в цикле в DOM страницы?
 
Начнем с того что код изначально с неправильной логикой. foreach который после проверки одной ссылки прерывается и выводит true или false.
Почему не пользуетесь стандартным экшеном? Можно же ссылки искать также в цикле в DOM страницы?

Почему же? Ты просмотрел.
Код выдаёт True, если ссылка под что то там подходит. False же выдаётся за циклом, т.е. если ни одна ссылка не подошла.

А по коду не вижу в чем проблема :(
 
в логике проблема.
ему нужно для каждой моей ссылки ..
то есть предполагается перебор. а тут просто заход на foreach и сразу выход оттуда на return )
ну то есть даже если бы код был правильно написан, учитывая список проекта, то дальше первой строки в списке он бы не пошел никуда)
 
Начнем с того что код изначально с неправильной логикой. foreach который после проверки одной ссылки прерывается и выводит true или false.
Почему не пользуетесь стандартным экшеном? Можно же ссылки искать также в цикле в DOM страницы?
Мне нужно проверить наличие одной из 18-ти ссылок на странице. Хочу упростить бот за счёт кода.
 
Если этих ссылок ограниченное число, т.е. всего 18, можно сделать это так:
1. Объеденить список, который содержит ссылки через свой разделитель - |, чтобы получилось так site1|site2|site3
2. Обработка текста - Regex - Теекст для обработки - {-Page.Dom-} - что искать - переменная с сайтами. В переменную попадёт сайт, который есть на этой странице. Если же переменная пустая, значит сайта нету на странице.
 
подумай немного да код свой допиши до конца, сравнение есть, поставь теперь условие что тебе надо при нахождении этой ссылки, росстоникс правильно говорит, в любом случае ты выходишь при чём при первом сравнении
 
Да нет там никакого косяка в логике) я тоже так постоянно делаю)
Если мне пофигу какая из 18 ссылок находится на странице то отлично все работает, если ни одна из них не выстрелила - то тогда False) А так если есть хоть одна (не важно какая) то True
 
То что там нужно найти одну из мне стало понятно только несколько сообщений назад)
 
  • Оценить
Реакции: Lexicon
@Andron проблему решили?
 

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