Что нового

Парсинг ссылок на изображение из html страницы

astati

Новичок
Сообщения
145
Репутация
4
Добрый день всем!
Возникла проблема с парсингом ссылок на изображения с сайта.
чтение документа делаю так:
Код:
$sUrl = 'http://www.go***.ru/'
   $oIEx  = _IECreateEmbedded()
   $hEmbed_GUI = GuiCreate("_IECreateEmbedded", 300, 300)
   $sPic1 = GUICtrlCreateObj($oIEx, 3, 3, 300, 300)
   GUISetState(@SW_Show); поставь hide если хошь скрыть
   _IENavigate ($oIEx, $sUrl)


Парсить пытаюсь так:
Код:
$filea=  _IEBodyReadHTML($oIEx)
$stra=StringRegExp($filea,'(?si)http://s5.go***.ru/wallpaper/previews/.*?',3)
$resa=''
For $i=0 To UBound($stra)-1
	  $resa&=$stra[$i]&@CRLF
	
 Next
GUICtrlSetData($Input1, $resa)

Страницу код считывает и сами ссылки получается. Но в конце ссылки всегда пустое значение.
Проблема в том что после слеша название картинки состоит из 24 различных символов и в конце не стоит расширение типа .jpg и т.д.
Пример:
Код:
http://s5.go ***.ru/wallpaper/previews/*
Может я что -то делаю не правильно. Подскажите плиз.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Re: Парсинг из html страницы

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"Парсинг из html страницы" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Глобальный модератор.
 
Автор
A

astati

Новичок
Сообщения
145
Репутация
4
Re: Парсинг ссылок на изображения из html страницы

Исправил
 

DarWiM

Продвинутый
Сообщения
527
Репутация
90
Re: Парсинг ссылок на изображения из html страницы

Код:
...
$sSrcs=''
$oImgs=_IETagNameGetCollection($oIE,'img')
For $oImg In $oImgs
	$sSrcs&=$oImg.src&@CRLF
Next
...

может так?
 
Автор
A

astati

Новичок
Сообщения
145
Репутация
4
Эт конечно могло б сработать. НО :
- мне надо достать не все изобржения, а одно конкретное. причем изображений н странице не одно.
- я не знаю последовательность после слеша, она постоянно меняется.
- если приписать в конце .JPG то изображение не парсится.
Может есть какой-то синтаксис, указав который после слеша вместо:
Код:
.*?
можно было указать что там 24 символа?
 

mef-t

Осваивающий
Сообщения
306
Репутация
30
1. как выглядит прямая ссылка?
2. если достать не получилось, то просьба указать адрес сайта (под спойлер). Если нельзя (не помню, разрешено ли это в данном случае), то можно в личку
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
astati [?]
можно было указать что там 24 символа?
да можно, например, если там конкретно набор из шестнадцатеричных цифер то можно явно это указать

Код:
StringRegExp($filea,'http://.*?/previews/[[:xdigit:]]{24}',3)
 
Автор
A

astati

Новичок
Сообщения
145
Репутация
4
к сожалению сайт указать не могу.

inververs щас попробую.


Добавлено:
Сообщение автоматически объединено:

inververs Спс. за подсказку. нашел то что мне надо.

Код:
[:alnum:]
 
Верх