Показать полную графическую версию : [решено] Получить заголовок страницы в Интернете
Это ещё не всё :):
$sURL = 'https://koi8.pp.ru/'
Iska, а почему не работает? Потому что кодировка?
Или robots.txt не позволяет?
Или слишком сложная доменная структура?
Iska, а почему не работает? Потому что кодировка? »
Потому что там KOI-8.
Я думаю, что сайтов с такой кодировкой уже почти не существует
Угу: Usage Statistics of Character Encodings for Websites, April 2017 (https://w3techs.com/technologies/overview/character_encoding/all). Но они есть. И, видите ли… уже почти не существует машин на Windows XP, но те, что есть, приходится учитывать. Так и тут — если рассматривать вопрос не в каком-то частном контексте, а в целом.
почему не работает? »
Потому что там тег TITLE (заглавными буквами), а в регулярке поиск по умолчанию чувствительный к регистру букв (нужно в начало добавлять (?i)).
Что касается кодировки, то это тоже можно решить (но здесь это не требуется):
#include (http://www.autoitscript.com/autoit3/docs/keywords.htm##include) <Encoding.au3>
$sURL = 'https://koi8.pp.ru/'
$sHtml = BinaryToString (http://www.autoitscript.com/autoit3/docs/functions/BinaryToString.htm)(InetRead (http://www.autoitscript.com/autoit3/docs/functions/InetRead.htm)($sURL))
$aTitle = StringRegExp (http://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm)($sHtml, '(?i)<title>(.*?)</title>', 3)
If (http://www.autoitscript.com/autoit3/docs/keywords.htm#If) Not (http://www.autoitscript.com/autoit3/docs/keywords.htm#Not) @error (http://www.autoitscript.com/autoit3/docs/macros.htm#@error) Then (http://www.autoitscript.com/autoit3/docs/keywords.htm#Then)
$sTitle = (_Encoding_IsUTF8Format($aTitle[0]) ? BinaryToString (http://www.autoitscript.com/autoit3/docs/functions/BinaryToString.htm)(StringToBinary (http://www.autoitscript.com/autoit3/docs/functions/StringToBinary.htm)($aTitle[0]), 4) : $aTitle[0])
$sTitle = (_Encoding_GetCyrillicANSIEncoding($sTitle) = 'KOI8-R' ? _Encoding_KOI8To1251($sTitle) : $sTitle)
MsgBox (http://www.autoitscript.com/autoit3/docs/functions/MsgBox.htm)(0, @ScriptName (http://www.autoitscript.com/autoit3/docs/macros.htm#@scriptname), $sTitle)
EndIf (http://www.autoitscript.com/autoit3/docs/keywords.htm#EndIf)
Библиотеку Encoding.au3 брать отсюда (http://autoit-script.ru/index.php?topic=510.0).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.