Вызов
Задача проста: с помощью http://isup.me определить, работает ли введенный веб-сайт или нет.
Если сайт работает, вы должны вернуть истинное значение, а если сайт не работает, вы должны вернуть ложное значение.
правила
На входе будет веб-адрес, такой как stackexchange.com
или google.co.uk
. У ввода никогда не будет http://
и https://
т. Д. В начале строки, но может быть www.
или codegolf.
в начале и т. Д.
Вы должны использовать сайт, isup.me/URL
где URL является вводом.
Когда сайт запущен, он будет выглядеть так:
http://isup.me/codegolf.stackexchange.com
Если сайт не работает, он будет выглядеть так:
Сокращения URL запрещены, кроме isup.me.
Пример входных данных
Вероятно, вверх (в зависимости от текущих обстоятельств):
google.de
codegolf.stackexchange.com
worldbuilding.meta.stackexchange.com
tio.run
store.nascar.com
isup.me
Будет вниз:
made.up.com
fake.com.us
why.why.why.delilah
store.antarcticrhubarbassociation.an
выигрыш
Самый короткий код в байтах побеждает.
fake.com.us
чтобы связываться с вашими тестами.isup.me
не работает?isup.me
. Он возвращает результат, отличный от того, что, скажем,google.com
может вернуть.Ответы:
sh (+ curl + grep),
2826 байтВыходы через состояние выхода (0 для повышения, 1 для снижения). Ищет
I
в начале строки, которая соответствует, когда домен открыт (даже для особого случая isup.me/isup.me ).источник
curl -L isup.me/$1|grep u!
сохраняет 1 байт. Это предполагает это! не является допустимым символом в имени домена.0
ли в ш?0
действительно верно в sh, причем все ненулевые значения ложны. Кроме того, IMO очень приятно, что версия sh такая короткая, поскольку это абсолютно подходящий язык для этой задачи, даже без учета игры в гольф.<a href="http://spthissitedoesntexist.invalid" class="domain">spthissitedoesntexist.invalid</a>
частности, оно соответствует внутриhref
.Stacked , 44 байта
Асинхронная функция, которая выводит,
0
если сайт не работает, и любой другой номер больше, чем0
если он работает.Пример а:
Вывод (вероятно):
Is google up? 1
источник
s u
, обратите внимание, что это происходит на любом входе, начиная сu
(вверх или вниз).'Is example.com up?' put 'example.com' isup
выходные данные (не только вероятно, но и верно):Is example.com up? 1
Kotlin REPL -
131 108 106 93 79 55 53 6463 байтаСначала попробуйте в гольф Kotlin.
Ожидает веб-сайт в переменной или значении с именем
a
.Теперь с уменьшенным пробелом.Кто сказал, что "Лоо" не достаточно?
Исправлено и короче, больше не зависит от http://isup.me .
Не нужно самим открывать соединение, просто получить поток данных (или нет)
Задача состояла в том, чтобы использовать http://isup.me , верно? Кроме того:
<
недопустимый символ в URL.Теперь работает
isup.me
как веб-сайтТеперь читает веб-сайт как строку, потому что нельзя предполагать, что переменная будет содержать веб-сайт.
Читает одну строку, содержащую только сайт.
Проверяет, какая
m h
частьfrom here
отправляется, когда сайт не работает.Возвращает «истина» или «ложь» соответственно.
Как лямбда -
172 120 118 99 85 6766 байтМожет быть вызван напрямую:
источник
loo
именем.electric.boogaloo
не существует, но строкаloo
будет в выводе там.Python 2 или 3 с запросами (
706968 байт)Побритый 1 байт:Нет, недопустимая оптимизация."u. "
→" u"
1 байт побрился:
__import__('requests').
→from requests import*;
Теперь это действительно фрагмент кода только для REPL, и после запуска этой строки будет названа функция
_
.источник
)
).u
.from requests import*
иget
на 1 байт короче.import
), поэтому я думаю, что безопаснее просто назвать его строкой REPL.Python3
141133113192141 байтТребуется Selenium (включая веб-драйвер) для Python.
Спасибо @cairdcoinheringaahing за сокращение 42 байта!
Спасибо @ V.Courtois за указание на простое исправление!
Печатает,
1
если сайт запущен и работает, иначе печатает0
.Безголовая версия:
источник
t
). Кроме того, вы можетеprint("up"in r.text)
Javascript (ES6),
7466 байтСпасибо @Shaggy, который обратил мое внимание на то, что решенное обещание считается результатом.
Проблема с этим решением в том, что он выдаст ошибку CORS, если я не протестирую ее на странице, которая уже есть
isup.me
. Но в настоящее время это перенаправляется наdownforeveryoneorjustme.com
Старая версия:
источник
alert
и просто вернуть обещание. Смотрите здесь . Я думаю, вы также можете сэкономить/u!/.test(t)
.Pyth , 24 байта
Вернуть,
True
если сайт работает, вFalse
противном случае. Входной URL должен быть в кавычках. Это не может быть проверено на онлайн-переводчике, потому что'
он отключен по соображениям безопасности; вместо этого вам понадобится локальная копия Pyth .объяснение
источник
u
.05AB1E , 22 байта
Попробуйте онлайн!
К сожалению
"isup.me/ÿ".w§„ uå
, похоже, не работает.источник
PowerShell, 32 байта
источник
irm
поведение спасло меня от этого. мой здесьPowerShell, 25 байт
Использует тот факт, что
Invoke-RestMethod
возвращает страницу с.html
свойством только при неудаче. (понятия не имею, почему именно это происходит ...)инвертирует строку для преобразования в bool, выходные данные
True
для живого сайта илиFalse
для сайта вниз.источник
irm
возвращает открытый текст для непарсируемых страниц, я собирался сделать совпадение открытого текста, чтобы он вел себя так же, как iwr, независимо от того, думаю, если он работает, он работает.Halovi , 20 байтов
Выводится,
p.
если сайт не работает, иe.
если он работает.Объяснение:
источник
Haskell (Lambdabot), 157 байт
К сожалению , вы не можете импортировать
Network.HTTP.Simple
наtio.run
самый простой способ тестирования было бы запустить этот скрипт (вам нужноstack
):источник
Go, 111 байт
В типичной манере Го самый короткий метод - это раскошелиться.
Другие реализации здесь: https://play.golang.org/p/8T5HSDQFmC
источник
Clojure, 63 байта
Проверяет , является ли HTML , возвращаемый
slurp
содержит строку"'s j"
(как в «Это «Sj усть вас»). Я мог бы найти строку меньшего размера, которая уникальна для страницы, но в лучшем случае это сэкономило бы мне 2 байта. Это также может сделать его менее точным. «j» не будет появляться в разметке где-либо, кроме как в этом сценарии. Строка типа "U". однако потенциально может появиться в URL, что может его сломать.источник
Ним, 108 байт
К сожалению,
strutils
это необходимо дляcontains
.Учимся Ним, советы приветствуются!
источник
PHP,
8278 байтПример ввода / вывода работает:
Пример 2
источник
+
. И$argn
вместо$argv[1]
вас можно использовать еще 6 (минус 1) байтов.