Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Парсинг txt и отправка результата на php гейт

Ответить
Настройки темы
VBS/WSH/JS - Парсинг txt и отправка результата на php гейт

Покинул форум


Сообщения: 32
Благодарности: 1

Профиль | Цитировать


Приветствую, появилась необходимость собирать данные из логов с нескольких машин, и вести статистику на сервере.
Суть следующая, есть лог файл Full.log, из него нужно выдрать все что лежит в одной из строк, после ()#4
И отправить найденную строку с помощью ниже приведенного скрипта
Код: Выделить весь код
Set oHTTP = CreateObject("winhttp.winhttprequest.5.1")

sSource = "http://www.site.ru/gate.php?id="здесь полученные выше данные""

oHTTP.open "GET", sSource, False

oHTTP.send
На сервере будет лежать php файл, который будет получать данные из переменной id и загонять их в базу данных.

Отправлено: 01:48, 14-10-2014

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Образец файла «Full.log» в архиве покажите. С данной строкой, разумеется.

Отправлено: 06:28, 14-10-2014 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Покинул форум


Сообщения: 32
Благодарности: 1

Профиль | Цитировать


Цитата:
Образец файла «Full.log» в архиве покажите. С данной строкой, разумеется.
http://ge.tt/33KCwZ12/v/0

Отправлено: 10:37, 14-10-2014 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


bugmenot3, не могу никаким боком загрузить файл оттуда. Выложите, пожалуйста, на RGhost.

Отправлено: 10:54, 14-10-2014 | #4


Покинул форум


Сообщения: 32
Благодарности: 1

Профиль | Цитировать


Как скажите
http://rghost.ru/58515442

Отправлено: 13:15, 14-10-2014 | #5


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


bugmenot3, получил. Пробуйте:
Код: Выделить весь код
Option Explicit

Dim strSourceFile

Dim objFSO
Dim strContent
Dim strValue


strSourceFile = "E:\Песочница\0401\Full.log"

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

If objFSO.FileExists(strSourceFile) Then
	With objFSO.OpenTextFile(strSourceFile)
		strContent = .ReadAll()
		.Close
	End With
	
	With WScript.CreateObject("VBScript.RegExp")
		.Pattern = "\(\)#4(.*?)\r\n"
		
		If .Test(strContent) Then
			strValue = .Execute(strContent).Item(0).Submatches.Item(0)
			
			WScript.Echo "Found value [" & strValue & "]."
			' Здесь Ваш код по отправке найденного текста
		Else
			WScript.Echo "Can't find pattern [" & .Pattern & "] in content of [" & strSourceFile & "]."
		End If
	End With
Else
	WScript.Echo "Can't find source file [" & strSourceFile & "]."
	WScript.Quit 1
End If

Set objFSO = Nothing

WScript.Quit 0
Учтите — в выложенном файле найденное значение содержит в начале пробел:
Код: Выделить весь код
Found value [ 39383196].
Он значим для Вас, или убрать возможные пробелы с начала/конца найденного текста?
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:52, 14-10-2014 | #6


Покинул форум


Сообщения: 32
Благодарности: 1

Профиль | Цитировать


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

Отправлено: 20:00, 14-10-2014 | #7


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Пробуйте:
читать дальше »
Код: Выделить весь код
Option Explicit

Dim strSourceFile
Dim strUrl

Dim objFSO
Dim strContent
Dim strValue


strSourceFile = "E:\Песочница\0401\Full.log"
strUrl        = "http://www.site.ru/gate.php?id= "

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

If objFSO.FileExists(strSourceFile) Then
	With objFSO.OpenTextFile(strSourceFile)
		strContent = .ReadAll()
		.Close
	End With
	
	With WScript.CreateObject("VBScript.RegExp")
		.Pattern = "\(\)#4\s*?(\S.*\S)\s*?\r\n"
		
		If .Test(strContent) Then
			strValue = .Execute(strContent).Item(0).Submatches.Item(0)
			
			WScript.Echo "Found value [" & strValue & "]."
			
			With WScript.CreateObject("WinHttp.WinHttpRequest.5.1")
				.Open "GET", Replace(strUrl, " ", strValue), False
				.Send
				
				If .Status = 200 Then
					WScript.Echo "Send successfully. Status: " & CStr(.Status)
				Else
					WScript.Echo "Error send. Status: " & CStr(.Status)
				End If
			End With
		Else
			WScript.Echo "Can't find pattern [" & .Pattern & "] in content of [" & strSourceFile & "]."
		End If
	End With
Else
	WScript.Echo "Can't find source file [" & strSourceFile & "]."
	WScript.Quit 1
End If

Set objFSO = Nothing

WScript.Quit 0


А что с этим:
Цитата Iska:
Учтите — в выложенном файле найденное значение содержит в начале пробел:
Код: Выделить весь код
Found value [ 39383196].
Он значим для Вас, или убрать возможные пробелы с начала/конца найденного текста? »
вопросом? Я своей волей убрал. Вернуть прежнее поведение?

И, по-хорошему, надо делать «decodeURI()» для отсылаемой строки — как раз на случай пробелов, всяких «/» и т.п. Что скажете?

Отправлено: 20:38, 14-10-2014 | #8


Покинул форум


Сообщения: 32
Благодарности: 1

Профиль | Цитировать


возвращать прежнее поведение не нужно, меньше пробелов, меньше непонятных проблем

Отправлено: 21:01, 14-10-2014 | #9


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата bugmenot3:
возвращать прежнее поведение не нужно, меньше пробелов, меньше непонятных проблем »
Лады. А как насчёт:
Цитата Iska:
И, по-хорошему, надо делать «decodeURI()» для отсылаемой строки — как раз на случай пробелов, всяких «/» и т.п. Что скажете? »
На самом деле, encodeURI(), конечно . «Совсем плохой стал» (с), encodeURIComponent .

Отправлено: 21:10, 14-10-2014 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Парсинг txt и отправка результата на php гейт

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - отправка на почту результата выполнения Denis38Denis38 Скриптовые языки администрирования Windows 2 19-08-2014 13:45
CMD/BAT - Запись результата команды в txt DeepPurple Скриптовые языки администрирования Windows 4 12-12-2013 15:31
CMD/BAT - Парсинг XML/TXT mxm199 Скриптовые языки администрирования Windows 10 17-07-2012 12:34
CMD/BAT - [решено] Сравнение txt файлов и вывод результата LAKERS824 Скриптовые языки администрирования Windows 2 08-07-2012 12:48
C/C++ - Отправка запросов на php Rain789 Программирование и базы данных 5 29-01-2011 11:44




 
Переход