Что нового

Получить ссылки по заданному URL(дан адрес страницы -получить все ссылки на ней)

Vampire

Новичок
Сообщения
11
Репутация
0
Дана текстовая строка URL адрес страницы.
желательно без использования браузеров
(например применив _INetGetSource)
получить массив ссылок найденных на этой странице.

Ссылка слидующего вида:
Код:
http://xxx.com/abcdefg?num=1234&section=all
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Код:
#include <Array.au3>

$_sURL = "http://autoit-script.ru/index.php"

$Read = BinaryToString(InetRead($_sURL), 4)
$_ArrUrls = StringRegExp($Read, 'href.?=.?"(http://.*?)"', 3)

_ArrayDisplay($_ArrUrls)
 
Автор
V

Vampire

Новичок
Сообщения
11
Репутация
0
Это, конечно круто. (проверил работает почти так как надо) Но только...
срабатывает на нормальных ссылках.
а вот на такого типа: (это не конкретная, только чтобы показать формат)
Код:
http://xxx.com/abcdefg?num=1234&section=all
на таких не срабатывает
Хотя
Код:
#Include <INet.au3> 
$HTML = _INetGetSource('http://xxx.com/abcdefg?num=1234&section=all') 
FileWrite(@ScriptDir & '\HTML.txt', $HTML)

она сохраняет страницу в файл. Может можно из $HTML как-нибудь выдрать ссылки? (не сохраняя)?
(Кто-нибудь может помочь?)
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Предупреждение За нарушение правил форума (пункт В.11):
Любые отрывки AutoIt кода необходимо заключать в тег [autoit]
autoit.gif
(подробнее), а обычный код соответственно в тег [code]
code.gif
(подробнее). Также большие выдержки текста помещайте под тег [spoiler]
spoiler.gif
(подробнее), там где это поддерживается естественно. Как в случае с названием темы, также короткое и эргономичное сообщение привлекает больше внимания, и шансы на получение конкретного ответа увеличиваются.


С уважением, ваш Модератор.
 
Верх