Войти
NeoBooker.ru
Добро пожаловать к нам в гости!
Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
  • Страница 1 из 1
  • 1
Модератор форума: Peter, DEMBEL, YURIY  
Форум NeoBook » Всё о программе NeoBook » Общие вопросы по NeoBook » И снова парсинг строки
И снова парсинг строки
MicroCipДата: Пн, 01 Августа 2011, 15:22 | Сообщение # 1
Участник
И снова Я) :D
Перед тем как создать тему перечитал, что мне показал поиск по запросу "Парсинг"
Не нашел того, что мне нужно. Значит дело вот в чем:
Нужно найти value следующего куска кода:
Code
<input type="hidden" name="snr" value="*_**_*__**">

Использовал функцию tagParse:
Code
Call "tagParse" "[html1]" "<input type=[#34]hidden[#34] name=[#34]snr[#34] value=[#34]" "[#34]>" "[snr]"

Но, проблема в том, что уже ДО нужного мне куска, встречается точно такой же, но его значение совсем другое, и мне оно не нужно.
Так вот собственно сам вопрос: Как получить value ИМЕННО второго куска?


В каждом человеке солнце. Только дайте ему светить.(с)Сократ
 
СообщениеИ снова Я) :D
Перед тем как создать тему перечитал, что мне показал поиск по запросу "Парсинг"
Не нашел того, что мне нужно. Значит дело вот в чем:
Нужно найти value следующего куска кода:
Code
<input type="hidden" name="snr" value="*_**_*__**">

Использовал функцию tagParse:
Code
Call "tagParse" "[html1]" "<input type=[#34]hidden[#34] name=[#34]snr[#34] value=[#34]" "[#34]>" "[snr]"

Но, проблема в том, что уже ДО нужного мне куска, встречается точно такой же, но его значение совсем другое, и мне оно не нужно.
Так вот собственно сам вопрос: Как получить value ИМЕННО второго куска?

Автор - MicroCip
Дата добавления - 01 Августа 2011 в 15:22
DEMBELДата: Пн, 01 Августа 2011, 15:44 | Сообщение # 2
Наш дизайнер
в завис. от ситуации и используемых методов есть разные подходы

- найти первый нужный кусок
удалить все данные с начала и включая первый кусок
в итоге второй нужный кусок станет первым и единственным

- тупо удалить первые ххх символов сначала строки, включающие ненужный мусор

все можно сделать собрав алгоритм из нб-команд - StrDel, SubStr, SearchStr

Добавлено (01 Август 2011, 15:44)
---------------------------------------------
другой подход, загрузить html-код в браузер и непосредственно взять java-скриптом значение нужного элемента по id или name - var value = document.getElementBy... [n].value и передать его в проект. Но я предпочитаю возиться вручную с парсером.


Как задавать вопросы

Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Сообщениев завис. от ситуации и используемых методов есть разные подходы

- найти первый нужный кусок
удалить все данные с начала и включая первый кусок
в итоге второй нужный кусок станет первым и единственным

- тупо удалить первые ххх символов сначала строки, включающие ненужный мусор

все можно сделать собрав алгоритм из нб-команд - StrDel, SubStr, SearchStr

Добавлено (01 Август 2011, 15:44)
---------------------------------------------
другой подход, загрузить html-код в браузер и непосредственно взять java-скриптом значение нужного элемента по id или name - var value = document.getElementBy... [n].value и передать его в проект. Но я предпочитаю возиться вручную с парсером.


Автор - DEMBEL
Дата добавления - 01 Августа 2011 в 15:44
MicroCipДата: Пн, 01 Августа 2011, 15:58 | Сообщение # 3
Участник
Quote (DEMBEL)
найти первый нужный кусок

Эх, если бы можно было найти номер строки в котором находится то, что ищешь...
Quote (DEMBEL)
удалить все данные с начала и включая первый кусок

Об этом я думал, даже пытался - безуспешно


В каждом человеке солнце. Только дайте ему светить.(с)Сократ
 
Сообщение
Quote (DEMBEL)
найти первый нужный кусок

Эх, если бы можно было найти номер строки в котором находится то, что ищешь...
Quote (DEMBEL)
удалить все данные с начала и включая первый кусок

Об этом я думал, даже пытался - безуспешно

Автор - MicroCip
Дата добавления - 01 Августа 2011 в 15:58
DEMBELДата: Пн, 01 Августа 2011, 16:25 | Сообщение # 4
Наш дизайнер
делаешь проблему на ровном месте. показывай весь кусок данных откуда нужно дергать, составлю алгоритм

Как задавать вопросы

Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Сообщениеделаешь проблему на ровном месте. показывай весь кусок данных откуда нужно дергать, составлю алгоритм

Автор - DEMBEL
Дата добавления - 01 Августа 2011 в 16:25
MicroCipДата: Пн, 01 Августа 2011, 16:28 | Сообщение # 5
Участник
Доступно только для пользователей
//Удалено (MicroCip)


В каждом человеке солнце. Только дайте ему светить.(с)Сократ

Сообщение отредактировано
MicroCip - Пн, 01 Августа 2011, 17:03
 
СообщениеДоступно только для пользователей
//Удалено (MicroCip)

Автор - MicroCip
Дата добавления - 01 Августа 2011 в 16:28
DEMBELДата: Пн, 01 Августа 2011, 16:54 | Сообщение # 6
Наш дизайнер
получаешь код с помощью InternetGet в переменную [Responce], далее суешь в парсер
Code
.парсер
.ищем первое совпадение
SearchStr "<input type=[#34]hidden[#34] name=[#34]snr[#34]" "[Responce]" "[pos]" ""
.удаляем кусок данных сначала и до совпадения + 100 символов (чтоб стопудово)
StrDel "[Responce]" "1" "[pos]+100" "[Responce]"
.ищем второе совпадение
SearchStr "<input type=[#34]hidden[#34] name=[#34]snr[#34]" "[Responce]" "[pos]" ""
.отрезаем лишнее сначала и до искомого значения
.включая длину искомой строки = +39 минус 1 начальный символ
StrDel "[Responce]" "1" "[pos]+38" "[Responce]"
.ищем конец блока значения - это будет кавычка со скобкой
.но если длина значения постоянная можно просто его
.отсчитать от начала
SearchStr "[#34]>" "[Responce]" "[pos]" ""
.когда определили начало и конец блока, вытаскиваем значение
SubStr "[Responce]" "1" "[pos]-1" "[Value]"
AlertBox "Вот и все" "Искомое значение|[Value]"


Как задавать вопросы

Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Сообщениеполучаешь код с помощью InternetGet в переменную [Responce], далее суешь в парсер
Code
.парсер
.ищем первое совпадение
SearchStr "<input type=[#34]hidden[#34] name=[#34]snr[#34]" "[Responce]" "[pos]" ""
.удаляем кусок данных сначала и до совпадения + 100 символов (чтоб стопудово)
StrDel "[Responce]" "1" "[pos]+100" "[Responce]"
.ищем второе совпадение
SearchStr "<input type=[#34]hidden[#34] name=[#34]snr[#34]" "[Responce]" "[pos]" ""
.отрезаем лишнее сначала и до искомого значения
.включая длину искомой строки = +39 минус 1 начальный символ
StrDel "[Responce]" "1" "[pos]+38" "[Responce]"
.ищем конец блока значения - это будет кавычка со скобкой
.но если длина значения постоянная можно просто его
.отсчитать от начала
SearchStr "[#34]>" "[Responce]" "[pos]" ""
.когда определили начало и конец блока, вытаскиваем значение
SubStr "[Responce]" "1" "[pos]-1" "[Value]"
AlertBox "Вот и все" "Искомое значение|[Value]"

Автор - DEMBEL
Дата добавления - 01 Августа 2011 в 16:54
MicroCipДата: Пн, 01 Августа 2011, 17:02 | Сообщение # 7
Участник
Quote (DEMBEL)
получаешь код с помощью InternetGet в переменную [Responce], далее суешь в парсер



В каждом человеке солнце. Только дайте ему светить.(с)Сократ
 
Сообщение
Quote (DEMBEL)
получаешь код с помощью InternetGet в переменную [Responce], далее суешь в парсер


Автор - MicroCip
Дата добавления - 01 Августа 2011 в 17:02
DEMBELДата: Пн, 01 Августа 2011, 17:13 | Сообщение # 8
Наш дизайнер

Добавлено (01 Август 2011, 17:13)
---------------------------------------------

Quote (MicroCip)
Эх, если бы можно было найти номер строки в котором находится то, что ищешь...

это тоже можно если надо, скинув данные в файл, и поискав в нем плагином hpwНе_помню_каким, hpwUtility чтоли... с дополнительными строковыми функциями


Как задавать вопросы

Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Сообщение

Добавлено (01 Август 2011, 17:13)
---------------------------------------------

Quote (MicroCip)
Эх, если бы можно было найти номер строки в котором находится то, что ищешь...

это тоже можно если надо, скинув данные в файл, и поискав в нем плагином hpwНе_помню_каким, hpwUtility чтоли... с дополнительными строковыми функциями

Автор - DEMBEL
Дата добавления - 01 Августа 2011 в 17:13
mishemДата: Пн, 01 Августа 2011, 20:19 | Сообщение # 9
Эксперт форума
MicroCip, жаль ссылку удалил, не могу посмотреть. Поэтому буду отталкиваться от предположения.
Quote (MicroCip)
Эх, если бы можно было найти номер строки в котором находится то, что ищешь...

Можно было с помощью команды StrParse
<input type="hidden" name="snr" value= - использовать как разделитель.


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.
 
СообщениеMicroCip, жаль ссылку удалил, не могу посмотреть. Поэтому буду отталкиваться от предположения.
Quote (MicroCip)
Эх, если бы можно было найти номер строки в котором находится то, что ищешь...

Можно было с помощью команды StrParse
<input type="hidden" name="snr" value= - использовать как разделитель.

Автор - mishem
Дата добавления - 01 Августа 2011 в 20:19
MicroCipДата: Пн, 01 Августа 2011, 22:16 | Сообщение # 10
Участник
Quote (DEMBEL)
это тоже можно если надо, скинув данные в файл, и поискав в нем плагином hpwНе_помню_каким, hpwUtility чтоли... с дополнительными строковыми функциями


Quote (mishem)
Можно было с помощью команды StrParse



В каждом человеке солнце. Только дайте ему светить.(с)Сократ
 
Сообщение
Quote (DEMBEL)
это тоже можно если надо, скинув данные в файл, и поискав в нем плагином hpwНе_помню_каким, hpwUtility чтоли... с дополнительными строковыми функциями


Quote (mishem)
Можно было с помощью команды StrParse


Автор - MicroCip
Дата добавления - 01 Августа 2011 в 22:16
mishemДата: Пн, 01 Августа 2011, 22:33 | Сообщение # 11
Эксперт форума
Quote (DEMBEL)
и поискав в нем плагином hpwНе_помню_каким, hpwUtility чтоли...

hpwControl
Но у него замечены баги. :( Не спрашивайте какие, не помню. Но есть.
Но плагин хороший.


Не хочешь читать хелп?

Если хелп и форум не помогли, тогда все ответы здесь



Если вы думаете, что сможете — вы сможете, если думаете, что нет — вы правы.


Сообщение отредактировано
mishem - Пн, 01 Августа 2011, 22:42
 
Сообщение
Quote (DEMBEL)
и поискав в нем плагином hpwНе_помню_каким, hpwUtility чтоли...

hpwControl
Но у него замечены баги. :( Не спрашивайте какие, не помню. Но есть.
Но плагин хороший.

Автор - mishem
Дата добавления - 01 Августа 2011 в 22:33
Форум NeoBook » Всё о программе NeoBook » Общие вопросы по NeoBook » И снова парсинг строки
  • Страница 1 из 1
  • 1
Поиск: