Wprowadzenie
Tak, to takie proste. Pobierz dowolny plik z Internetu!
Zasady
Musisz użyć interfejsu API swojego języka.
Musisz wydrukować pobrany plik do STDOUT, konsoli, pliku itp.
Dane wejściowe powinny być puste lub adres URL, który chcesz pobrać, ale adres URL musi się liczyć do liczby bajtów.
Powodzenia!
curl
nie jest narzędziem, które już istnieje? :)curl ai
nie trzeba http: //ai
powinno być Dajecurl: (6) Could not resolve host: ai
tutaj.Röda , 29 bajtów
Jest to anonimowa funkcja, która tworzy plik
a
zawierający kod HTMLhttp://ai
.źródło
ai
jest TLD. Zwykle TLD nie rozwiązują adresów hostujących witryny, ale najwyraźniej tak jest.MATL, 8 bajtów
Adres URL podany do
Xi
(urlread
) jest dodawany przed,http://
jeśli jeszcze nie jest. Dodatkowo dane wyjścioweurlread
zawierają treść odpowiedzi, która jest domyślnie drukowana po wyjściu z programu.Niestety nie działa to w przypadku kompilatorów online, ponieważ ładowanie danych z dowolnego adresu URL jest zabronione w trybie online, więc oto GIF.
źródło
Grzmotnąć,
4543 bajtyotwiera gniazdo tcp z witryną AI na deskryptorze pliku 3, wydaje polecenie get i koty wynik. być może można dalej grać w golfa.
źródło
"
wokółGET /
.Mathematica 18 bajtów
źródło
FetchURL
działaURLFetch
która wymaga wersji Mathematica przed 11.URLTools
reference.wolfram.com/language/ref/URLFetch.htmlPowerShell, 7 bajtów
Ponieważ wszyscy używamy
www.ai
...uses
Invoke-RestMethod
- drukuje wynik do StdOutalternatywna odpowiedź, zapisuje do pliku o nazwie „a” w katalogu uruchamiania, używając
Invoke-WebRequest
i-OutFile
param.źródło
irm
który nie pobierzeany file
, zgodnie z żądaniem w pytaniu, ponieważ jeśli serwer zwróci json lub xml, zamiast tego zostanie zamieniony na obiekt PSObject. Iirm ai.
nie działa dla mnie - mówi, że imienia nie można rozwiązać ... Dostaję"$(irm g.cn)"
jako sugestię.irm
- @John Hathwood - czy to nadal odpowiada wyzwaniu, czy wymaga zmiany? jestem trochę niejasny w kwestii „dowolnego pliku” - wyświetla „przeanalizowaną” kopię dowolnego pliku json lub xml, wszystkie inne pliki są zwracane na surowo.nslookup ai.
lubnslookup www.ai 8.8.8.8
?iwr
odpowiedź będzie poprawna.C #,
9693 bajtówźródło
PHP, 22 bajty
Jeśli
allow_url_include=1
jest w twoim pliku ini:źródło
JS (ES6),
38363129 bajtówW zależności od konsensusu obietnicy (41 bajtów)
źródło
alert
.text
obietnicę czy...then(x=>alert(x.text()))
działa?R, 24 bajty
wypisuje dane wyjściowe na konsolę w zwykłym formacie R - wektor ciągów, jeden element na wiersz witryny.
źródło
Mathematica, 13 bajtów
źródło
Python 2,
554947 bajtówNie krótszy, alenaprawdę pomyślałem, że mogę pójść dalej.źródło
from urllib import*\nurlopen('http://g.co').read
jest to poprawne przesłanie, ponieważ druga linia to funkcja bez nazwy (podobnie jak nienazwana funkcja lambda)IOError: [Errno socket error] [Errno 8] nodename nor servname provided, or not known
Komenda Vim Ex, 14 bajtów
Otwiera adres URL jako nowy bufor. Netrw poważnie cierpi z powodu restrykcyjnego formatu adresu URL.
źródło
nc -v v.ht 80 <plik - 31 bajtów
Gdzie plik zawiera:
Wyznaję niewiedzę o tym, jak powinienem to zdobyć. Plik ma 31 bajtów i zawiera adres URL, którego chcę,
-v
wartość flagi decyduje, czy otrzymam żądany plik, czy odpowiedź na błąd.źródło
nc ai 80<<<GET\ /
pracuje dla mnie dla 18BHost
wartości. Mogę usunąć dwa ostatnie\r\n
kupletyai
zacurl
albowget
ale nie dlanc
. tryai.
(kropka końcowa) lub3.ly
. Jest to strona błędu, ale nadal mieści się w granicach wyzwania.\n
. Spróbuję więcej rzeczy, kiedy wrócę do domuRakieta, 71 bajtów
źródło
HTML, 24 bajty
To technicznie zawodzi, ponieważ renderuje wynik ...
źródło
<embed src=//ai
Vim, 2 + 12 = 14 bajtów
Oczekuje adresu URL
http://3.ly/
jako danych wejściowych.gf
otwiera bieżący plik pod kursorem. Dzięki netrw działa to dobrze w przypadku adresów URL. Znalazłem to właśnie teraz, próbując zapamiętać polecenie otwierania adresów URL w przeglądarce (znalazłem, to jestgx
).źródło
PowerShell, 62 bajty
PowerShell 5
66 bajtów dla starszych wersji PowerShell
źródło
Python + żądania,
555350 bajtów-2 bajty poprzez przełączanie adresów URL -3 bajty dzięki ovs
źródło
from request import*
jest o 2 bajty krótszyhttp://ai
jest to prawidłowy pełny adres URL.AHK , 31 bajtów
Jest wbudowany, więc nie jest zbyt ekscytujący. Spróbuj jednak mody, funkcja jest dość długa.
źródło
Bash + wget, 7 bajtów
Pobiera stronę z http: // ai
źródło
wget ai.
(z kropką) działa.nslookup
,dig
inc
wszyscy uważają, że jest w porządku. No cóż, nie pierwsza różnica, jaką widziałem, i nie warto instalować vm.Rubinowy, 27 + 10 = 37 bajtów
+10 bajtów dla
-ropen-uri
flagi (wymaga biblioteki open-uri)źródło
Perl, 41 bajtów
źródło
perl -e''
w swoim bytecount. O tym, jak liczyć flagi i co, zobacz ten post . Do zobaczenia mam nadzieję!Pyth , 4 + 11 = 15 bajtów
Z adresem URL
http://v.ht
jako wejściem. Pobiera ciąg adresu URL jako dane wejściowe, pobiera plik i drukuje jego zawartość.Wyjaśnienie:
Zauważ, że nie możemy użyć funkcji
s
do konkatenacji listy z powodu problemów z typami bajtów.Nieznaczne oszustwo, 2 + 11 = 13 bajtów (wyświetla listę linii w pliku zamiast jednego ciągu dla całego pliku):
Będziesz musiał zainstalować Pyth na swoim komputerze, aby go przetestować (interpreter online nie wykonuje niebezpiecznych operacji).
źródło
C #, 76 bajtów
źródło
MATLAB, 20 bajtów
Nic szczególnego tutaj ...
źródło
Kdb +,
3415 bajtówKDB +> = 3,4
od tutaj .
KDB + <3,4
źródło