এই সাইটটি নীচে আছে বা এটি কেবল আমার?


13

চ্যালেঞ্জ

Http://isup.me ব্যবহার করে একটি চ্যালেঞ্জটি সহজ, কোনও ইনপুটযুক্ত ওয়েবসাইট উপরে বা নীচে রয়েছে কিনা তা নির্ধারণ করে।

যদি সাইটটি আপ থাকে তবে আপনার উচিত একটি সত্যবাদী মান এবং যদি সাইটটি নীচে থাকে তবে আপনার উচিত একটি মিথ্যা মান।

বিধি

ইনপুট যেমন একটি ওয়েব ঠিকানা হতে হবে stackexchange.comবা google.co.uk। ইনপুট আছে হবে না http://, https://স্ট্রিং শুরুতে ইত্যাদি, কিন্তু থাকতে পারে www.বা codegolf.এ শুরু ইত্যাদি

isup.me/URLইউআরএল ইনপুট হিসাবে আপনার সেই সাইটটি ব্যবহার করা উচিত ।

যখন কোনও সাইট থাকবে, তখন এটির মতো দেখতে পাবেন:

http://isup.me/codegolf.stackexchange.com

যদি কোনও সাইটটি নিচে থাকে তবে এটির মতো দেখাবে:

http://isup.me/does.not.exist

ইউআরএল সংক্ষিপ্তকারীদের isup.me. এর বাইরে অনুমতি দেওয়া হয় না are

উদাহরণ ইনপুট

সম্ভবত আপ (বর্তমান পরিস্থিতিতে উপর নির্ভর করে):

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

জয়লাভ

বাইটস মধ্যে সংক্ষিপ্ত কোড।


21
যাইহোক: "made.up.co.uk" আসলে শেষ।
জায়ান্ট্রি ট্রি

8
আমি সবেমাত্র fake.com.usআপনার পরীক্ষার কেসগুলিতে গোলযোগের জন্য নিবন্ধন করেছি !
ওয়াইএসসি

14
তবে isup.meনিচে থাকলে কী হবে?
Okx

2
@ ওক্স আপনি কি নিশ্চিত যে এটি কেবল আপনিই নন?
পিয়ের আরলাড

3
প্রস্তাবিত পরীক্ষা মামলা: isup.me। এটি কী বলে, ব্যতীত অন্য কোনও ফলাফল দেয় google.com
Okx

উত্তর:


16

sh (+ কার্ল + গ্রেপ), 28 26 বাইট

curl -L isup.me/$1|grep ^I

প্রস্থান স্থিতির মাধ্যমে আউটপুট (0 আপ আপ, 1 ডাউন ডাউন)। একটি জন্য দেখায় Iএকটি লাইন, যা মিলে যায় যখন ডোমেইন আপ (এমনকি বিশেষ মামলায় শুরুতে isup.me/isup.me )।


1
curl -L isup.me/$1|grep u!1 বাইট সাশ্রয় করে। এই যে ধরে! ডোমেন নামে একটি বৈধ অক্ষর নয়।

কি 0SH মধ্যে truthy?
শেগি

1
0সমস্ত ননজারো মানগুলি মিথ্যা বলে সত্যই শ sh এছাড়াও, আইএমও এটি খুব সুন্দর যে শ ভার্সনটি খুব সংক্ষিপ্ত, কারণ গল্ফিংয়ের কথা বিবেচনা না করেও এটি এই কাজের জন্য একেবারে সঠিক ভাষা।
স্কোর_উন্ডারে

এটি বলেছিল যে এটি spthissitedoesntexist.inમાન્ય
স্কোর_উন্ডারের

1
এটি আমার মেশিনে মেলে। এটি এই বিটের সাথে মেলে: <a href="http://spthissitedoesntexist.invalid" class="domain">spthissitedoesntexist.invalid</a>বিশেষত এটি এর সাথে মেলে href
স্কোর_উন্ডারে

5

স্ট্যাকড , 44 বাইট

['http://isup.me/'\+[CS'!'eq sum 2=out]curl]

অ্যাসিক্রোনাস ফাংশন যা 0সাইটটি আপ না থাকলে আউটপুট হয় এবং 0এটির চেয়ে বেশি অন্য কোনও সংখ্যা ।

উদাহরণ একটি:

['http://isup.me/'\+['s u'split#'1-put]curl] @:isup

'Is google up?' put 'google.com' isup

আউটপুট (সম্ভবত): Is google up? 1


আপনি কি স্ট্যাকড জিএইচ পৃষ্ঠায় লিঙ্ক যুক্ত করতে পারেন?
ডাউনগোট

@ ডাউনগোট সমাপ্ত
কনার ও ব্রায়ান

যদি এটির কোনও ঘটনার জন্য অনুসন্ধান করা হয় তবে s uনোট করুন যে এটি কোনও ইনপুট থেকে শুরু হয় u(উপরে বা নিচে)।
অ্যান্ডারস ক্যাসরগ

@ অ্যান্ডারস ক্যাসরগ স্থির, ধন্যবাদ
কনর ও ব্রায়ান

আরও ভাল উদাহরণ: 'Is example.com up?' put 'example.com' isupআউটপুট (কেবল সম্ভবত নয় তবে অবশ্যই):Is example.com up? 1
এরিক আউটগল্ফার

4

কোটলিন REPL - 131 108 106 93 79 55 53 64 63 বাইট

প্রথমে কোটলিন গল্ফিং এ চেষ্টা করুন।
নামটি একটি ভেরিয়েবল বা মান হিসাবে ওয়েবসাইট প্রত্যাশা করে a

এখন হ্রাস করা সাদা স্থানের সাথে।
কে বলেছে "লু" যথেষ্ট নয়?
স্থির এবং খাটো, http://isup.me আর নির্ভর করে না। নিজেই
সংযোগটি খোলার দরকার নেই, কেবল ডেটা স্ট্রিম পান (বা না)
কাজটি ছিল http://isup.me ব্যবহার করা , তাই না? এছাড়াও: <কোনও ইউআরএলে কোনও বৈধ অক্ষর নয়।
এখন isup.meওয়েবসাইট হিসাবে কাজ করে

এখন ওয়েবসাইটটি একটি লাইন হিসাবে পড়ে, কারণ ওয়েবসাইটটি ধারণ করার জন্য কেউ ভেরিয়েবল ধরে নিতে পারে না।

"m h" !in java.net.URL("http://isup.me/"+readLine()).readText()

কেবল ওয়েবসাইট সম্বলিত একটি লাইন পড়ে।
কোনও m hঅংশ from hereডাউন থাকলেই এর অংশের জন্য চেকগুলি প্রেরণ করা হয়।

যথাক্রমে "সত্য" বা "মিথ্যা" প্রদান করে।


লাম্বদা হিসাবে - 172 120 118 99 85 67 66 বাইট

{a:String->"m h" !in java.net.URL("http://isup.me/$a").readText()}

সরাসরি আহ্বান করা যেতে পারে:

{ ... }("google.com")

আমি ভুল হলে আমাকে ক্ষমা করুন, তবে এটিকে কি খুব সহজেই ল্যাম্বডায় রূপান্তর করা যায় না?
নিক ক্লিফোর্ড

@ নিকক্লিফফোর্ড নিশ্চিত, তবে এটি যুক্তি এবং ধরণের সংজ্ঞা (15 অক্ষর কারণ টাইপ অনুকরণ এখানে কাজ করে না) কারণে
দীর্ঘায়িত হবে

3
আমি ভাষাটি জানি না, তবে মনে হচ্ছে আপনি ফেরত পাঠ্যে "লু" আছে কিনা তা পরীক্ষা করে দেখছেন। এই পাঠ্যটি (পরিবর্তনশীল) সাইটের নামও ফেরত দেয় এমনটি হয় না? এবং যদি এটি হয় তবে এর অর্থ কি আপনি loo.com এর মতো সাইটের জন্য মিথ্যা নেতিবাচক পান?
কোলে

@ কোল আপনি অবশ্যই সত্য বলেছেন, আমি এটি সম্পর্কে সম্পূর্ণরূপে ভুলে গেছি (আমি কেবল গুগল এবং নকল ওয়েবসাইটটিই পরীক্ষা করছিলাম)। আমি পরের দিন সকালে কোডটি আপডেট করব (এটি এখন দুপুর ২ টা যেখানে আমি বর্তমানে আছি)
জায়ান্ট্রি ট্রি

এই looনামের সাথে সাইটগুলিতে ব্যর্থ হবে । electric.boogalooঅস্তিত্ব নেই তবে স্ট্রিংটি looআউটপুটটিতে থাকবে।
স্কোর_উন্ডারে

2

অনুরোধের সাথে পাইথন 2 বা 3 ( 70 69 68 বাইট)

from requests import*;lambda u:"u. "in get("http://isup.me/"+u).text

1 বাইট"u. "" u" শেভড : ope না, বৈধ অপ্টিমাইজেশন নয়।
1 বাইট শেভড: __import__('requests').from requests import*;

এটি এখন সত্যই কেবল একটি কোডের টুকরো এবং এই লাইনটি চালানোর পরে ফাংশনটির নাম দেওয়া হবে _


1
শেষে সিনট্যাক্স ত্রুটি (সম্ভবত একটি বিপথগামী ))।
এরিক আউটগল্ফার

1
শুরু হওয়া ইনপুটগুলির জন্য ব্যর্থ u
এরিক আউটগল্ফার

1
ব্যবহার করে from requests import*এবং get1 বাইট সংক্ষিপ্ত।
mbomb007

1
এটি কেবলমাত্র REPL- নয়, নামবিহীন ফাংশন (পাইথনের ল্যাম্বডাস) দিয়ে উত্তর দেওয়ার অনুমতি দেওয়া হয়েছে
ফিলিপ নার্দি বাতিস্তা

এটি একটি নামবিহীন ফাংশন, তবে সামগ্রিক স্ক্রিপ্টটি একটি অভিব্যক্তি হিসাবে ব্যবহার করা যায় না (যেহেতু এটি ব্যবহার করে import), সুতরাং আমি মনে করি এটি কেবল একটি আরপিএল লাইন বলা নিরাপদ।
স্কোর_উন্ডারে

2

পাইথন 3 141 133 113 192 141 বাইট

পাইথনের জন্য সেলেনিয়াম (ওয়েবড্রাইভার সহ) প্রয়োজন ।

42 বাইট কমানোর জন্য @cairdcoinheringaahing ধন্যবাদ!
একটি সাধারণ ফিক্স দেখানোর জন্য @ ভি.কোর্টোসকে ধন্যবাদ!

from selenium import*
d=webdriver.Firefox();d.get("http://isup.me/"+input());print("up"in d.find_element_by_xpath("//*[@id='content']/p[1]"))

ছাপে 1যদি সাইটি অন্য কপি করে প্রিন্ট আপ এবং চলমান 0

অবরুদ্ধ সংস্করণ:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
urlToTest = "www.f.com"
driver = webdriver.Firefox()
driver.get("http://downforeveryoneorjustme.com/"+urlToTest)
res = driver.find_element_by_xpath("//*[@id='content']/p[1]")
print(1 if "up" in res.text else 0)

তারা বলেছে যে মন্তব্যগুলিতে isup.me ঠিক আছে; আপনি কিছু বাইট জিততে পারেন :)
ভি। কুর্তোইস

1
-1 এটি একটি স্নিপেট। সম্পূর্ণ প্রোগ্রাম বা ফাংশন প্রয়োজন এবং ইনপুট একটি পরিবর্তনশীল (যেমন t) ধরে নেওয়া যায় না । এছাড়াও, আপনি প্রিন্ট স্টেটমেন্টটি গল্ফ করতে পারেনprint("up"in r.text)
সিয়ার্ড কোইনারিংহিং

ঠিক আছে, কায়ারডকয়েনেরিংহিংহিং ঠিক আছে, এই পরিবর্তনগুলি করবেন, ধন্যবাদ! এটি আমার দ্বিতীয় উত্তর, সুতরাং স্নিপেট বা একটি পূর্ণাঙ্গ প্রোগ্রাম পোস্ট করব কিনা তা আমি জানতাম না। সুতরাং আমি উভয় পোস্ট।
রাহুল ভরদ্বাজ


2

জাভাস্ক্রিপ্ট (ES6), 74 66 বাইট

f=s=>fetch('//isup.me/'+s).then(r=>r.text()).then(t=>/u!/.test(t))

@ শ্যাগিকে ধন্যবাদ, যিনি আমার নজরে এনেছিলেন যে একটি সমাধান প্রতিশ্রুতি আউটপুট হিসাবে গণনা করা হয়েছে।

এই সমাধানে সমস্যা হ'ল এটি যদি একটি সিআরএস ত্রুটি ছুঁড়ে দেয় তবে আমি এটি ইতিমধ্যে একটি পৃষ্ঠায় পরীক্ষা না করি isup.me। তবে বর্তমানে এটি পুনঃনির্দেশিত হয়downforeveryoneorjustme.com

পুরানো সংস্করণ:

F = গুলি => আনা ( '// isup.me/'+s).then(r=>r.text()).then(t=>alert(t.match(/u!/)))


1
আপনি এ থেকে মুক্তি পেতে পারেন alertএবং কেবল প্রতিশ্রুতি ফিরিয়ে দিতে পারেন। এখানে দেখুন । আমি মনে করি আপনি এটি দিয়ে কোনও সঞ্চয়ও করতে পারবেন /u!/.test(t)
শেগি

1

পাইথ , 24 বাইট

}" u"s'+"http://isup.me/

অন্যথায় Trueসাইটটি উপরে থাকলে ফিরে আসুন False। ইনপুট URL টি উদ্ধৃত করা আবশ্যক। এটি অনলাইন দোভাষীগুলিতে পরীক্ষা করা যায় না কারণ 'এটি সুরক্ষার কারণে অক্ষম করা আছে; পরিবর্তে আপনার কাছে পাইথের স্থানীয় কপি লাগবে ।

ব্যাখ্যা

                        Q    # Implicit input
       +"http://isup.me/     # Concatenate "http://isup.me/" with the input
      '                      # Open the URL
     s                       # Concatenate all the lines of the returned HTML page
}" u"                        # Test whether " u" is in the page or not

1
শুরু হওয়া ইনপুটগুলির জন্য ব্যর্থ u
এরিক আউটগল্ফার


1

পাওয়ারশেল, 32 বাইট

(iwr isup.me/$args)-notmatch'u!'

আমার পোস্ট করার আগে তোমার উত্তর মিস করলাম! কিছু অদ্ভুত irmআচরণ আমাকে এই এক গোছা বাঁচায়। আমার এখানে
কলসো

1

পাওয়ারশেল, 25 বাইট

!(irm isup.me/$args).html

এই ব্যপারটি ব্যবহার করে যে কেবল ব্যর্থতার Invoke-RestMethodপরে পৃষ্ঠাটি কোনও .htmlসম্পত্তি দিয়ে দেয়। (ঠিক কেন এমন হয় তা জানিনা ...)

লাইনে উলটিকে রূপান্তরিত করে বুলে রূপান্তরিত করা, Trueলাইভ সাইটের Falseজন্য বা ডাউন সাইটের আউটপুটগুলি ।

PS C:\Users\sweeneyc\Desktop> .\Test-SiteUp.ps1 "connorlsw.com"
True
PS C:\Users\sweeneyc\Desktop> .\Test-SiteUp.ps1 "connorlsw.notawebsite"
False
PS C:\Users\sweeneyc\Desktop> .\Test-SiteUp.ps1 "google.com"
True
PS C:\Users\sweeneyc\Desktop> .\Test-SiteUp.ps1 "isthisreallyasite.com"
False

@ টেসেল্লাটিংহেকল পার্সেবল irmঅযোগ্য পৃষ্ঠাগুলির জন্য প্লেইন টেক্সট ফেরত দেয়, আমি একটি সরলপাখি ম্যাচ করতে যাচ্ছিলাম সুতরাং এটি যদি কাজ না করে তবেই অনুমান করা যাই হোক না কেন এটি iwr এর মতোই আচরণ করত।
কলস

1

হালোভি , 20 বাইট

oisup.me/⁰
\p
ye$hd0

p.সাইটটি নিচে থাকলে আউটপুট হয় এবং e.তা যদি হয়।

ব্যাখ্যা:

oisup.me/⁰  ~# Open the concatination of "isup.me/" and arg0
\p          ~# Select first p element
ye$hd0      ~# Edit text with neovim and output result:
            ~#   Go one character before the end of the line and ..
            ~#   delete until beginning

1

হাস্কেল (ল্যাম্বডাবোট), 157 বাইট

import Data.ByteString.Lazy.Char8
import Network.HTTP.Simple
f s=httpLBS(parseRequest_$"http://isup.me/"++s)>>=print.not.isInfixOf"u!".unpack.getResponseBody

দুর্ভাগ্যবশত আমদানি করতে পারবেন না Network.HTTP.Simpleউপর tio.run, পরীক্ষা করার সবচেয়ে সহজ উপায় এই স্ক্রিপ্টের (আপনার প্রয়োজন হবে চালানোর জন্য হবে stack):

#!/usr/bin/env stack
-- stack --install-ghc --resolver lts-8.19 runghc --package http-conduit

import Data.ByteString.Lazy.Char8
import Network.HTTP.Simple
import Data.List

main :: IO ()
main = mapM_ test [ "google.de", "made.up.com"]
  where test url = print ("testing "++url) >> f url

f :: String -> IO ()
f s=httpLBS(parseRequest_$"http://isup.me/"++s)
 >>=print.not.isInfixOf"u!".unpack.getResponseBody


0

Clojure, 63 বাইট

#(clojure.string/includes?(slurp(str"http://isup.me/"%))"'s j")

এইচটিএমএল ফিরে এসেছে কিনা তা পরীক্ষা slurpকরে "'s j"(যেমন এটি "এটি এসজে অস্ট আপনি") রয়েছে। আমি এই পৃষ্ঠার জন্য অনন্য একটি ছোট স্ট্রিং সন্ধান করতে সক্ষম হতে পারি তবে এটি আমার সর্বাধিক 2 বাইট সংরক্ষণ করতে পারে। এটি সম্ভাব্যভাবে এটি আরও কম সঠিক করে তুলবে। "এর জে" সেই দৃশ্যের বাইরে কোথাও মার্কআপে উপস্থিত হবে না। "ইউ" এর মতো একটি স্ট্রিং। তবে সম্ভবত ইউআরএলে উপস্থিত হতে পারে, যা এটি ভেঙে দেবে।

(defn is-up? [site]
  (clojure.string/includes?
    (slurp (str "http://isup.me/" site))
    "'s j"))

0

নিম, 108 বাইট

import httpclient,strutils
echo newhttpclient().getcontent("//isup.me/"&stdin.readline.string).find("ks ")<0

দুর্ভাগ্য যে strutilsজন্য প্রয়োজন contains

নিম শিখছি, টিপস প্রশংসা!


0

পিএইচপি, 82 78 বাইট

<?=$i=$argv[1],+!preg_match("/!.*$i/",file_get_contents("http://isup.me/$i"));

আই / ও রান উদাহরণ:

$ php script.php google.com
> google.com1

উদাহরণ 2

$ php script.php does.not.exist
> does.not.exist0

প্রায় সংক্ষিপ্ততম সমাধান সম্ভব। খালি আউটপুটও "একটি মিথ্যা মান", যাতে আপনি এটি মুছতে পারেন +। এবং এর $argnপরিবর্তে $argv[1]আপনি আরও 6 (বিয়োগ 1) বাইট ব্যবহার করতে পারেন।
তিতাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.