Автор Тема: curl  (Прочетена 619 пъти)

jet

  • Напреднали
  • *****
  • Публикации: 1867
  • Distribution: debian sid
  • Window Manager: kde
    • Профил
curl
« -: Dec 21, 2019, 03:45 »
Знаете ли този трик:
curl wttr.in

и този:
curl wttr.in/@linux-bg.org
Активен

Linux: From WTF to OMG

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 5457
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Re: curl
« Отговор #1 -: Dec 21, 2019, 09:01 »
Това питонско нещо е мега яко. Жалко, че Ред не е написал новина. Щеше да е яко да го комбинират с другото за фазите на луната. Така и не го разгледах, от къде взима данните. Работата е там, че в Интернет има два източника. Единия обаче използва инсталациите на летищата и поради ограничения брой летища, интерполира данните и така е доста по-неточно.
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

stealth01

  • Напреднали
  • *****
  • Публикации: 693
  • Distribution: Debian testing
  • Window Manager: KDE
    • Профил
Re: curl
« Отговор #2 -: Dec 21, 2019, 09:05 »
Иха!
Тествал ли си до колко познава? Щото „various data sources“ е доста относително понятие...
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 3345
    • Профил
Re: curl
« Отговор #3 -: Dec 21, 2019, 09:43 »
curl явно връща такива байтове, че да форматира и да се получи това в терминала. Но сайта сигурно гледа, от къде се праща заявката. Защото, ако отворя адреса в уеб браузър и виждам абсолютно същото :D
Много готино. :)

Аз мислех да си пиша скриптче за времето ползвайки OpenWeatherMap обаче така и не седнах да го направя.  :-[
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

p4p

  • Напреднали
  • *****
  • Публикации: 57
  • Distribution: openSUSE
  • Window Manager: KDE5
    • Профил
Re: curl
« Отговор #4 -: Dec 21, 2019, 10:04 »
В браузъра е на български, а в терминала на английски:

https://i.imgur.com/AmY9KbV.png

https://i.imgur.com/OzWrKHw.png

Хареса ми.

Благодаря!
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 3345
    • Профил
Re: curl
« Отговор #5 -: Dec 21, 2019, 10:46 »
В браузъра е на български, а в терминала на английски:

https://i.imgur.com/AmY9KbV.png

https://i.imgur.com/OzWrKHw.png

Хареса ми.

Благодаря!
Ако се погледне, какви са хедърите на заявката на уеб браузъра, може да се изпрати същата и в тарминала. И ако терминала поддържа Unicode би трябвало да може да излезе и там на български :)

Код:
$ curl --header "Accept-Language: bg-BG" wttr.in

Това при мен свърши работа и изкара в терминала на български
« Последна редакция: Dec 21, 2019, 11:26 от 4096bits »
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 5457
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Re: curl
« Отговор #6 -: Dec 21, 2019, 12:08 »

Код:
$ curl --header "Accept-Language: bg-BG" wttr.in

Това при мен свърши работа и изкара в терминала на български

Сега остава да го излъжем да ни дава за местоположение, което искаме. Защото по IP мен ме прави софиянец, а и не съм само аз.
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

p4p

  • Напреднали
  • *****
  • Публикации: 57
  • Distribution: openSUSE
  • Window Manager: KDE5
    • Профил
Re: curl
« Отговор #7 -: Dec 21, 2019, 12:14 »
Няма проблеми с местоживеенето.

https://i.imgur.com/IylT4el.png

За Видин:

Код:
curl --header "Accept-Language: bg-BG" wttr.in/Видин,България

https://i.imgur.com/xl5NHqg.png


@4096bits

Благодаря!
« Последна редакция: Dec 21, 2019, 12:24 от p4p »
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 3345
    • Профил
Re: curl
« Отговор #8 -: Dec 21, 2019, 12:42 »
Ами пробвах и аз според този help. Обаче не ми се получи.

Пробвах да добавя Видин, Vidin, vidin, пробвах координати ( дори това не сработи  :o )

@p4p, браво!

Впрочем, Гугъл карти ми дава съвсем различни координати за Видин, от тези, които виждам на снимката на екрана в горния пост.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

4096bits

  • Напреднали
  • *****
  • Публикации: 3345
    • Профил
Re: curl
« Отговор #9 -: Dec 21, 2019, 12:59 »
Сега отидох и на https://github.com/chubin/wttr.in да поразгледам и ми хареса, че мога да взема JSON отговор и да си правя с данните, каквото ми хрумне.  ;D

Вижда ми се по-просто, отколкото да си правя API ключ някъде, че да имам достъп до всичко това. Въпреки, че директно от източника данните ще са много повече. Но и това е предостатъчно

Хареса ми също и възможността да получа времето на един ред - най-основното.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 5457
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Re: curl
« Отговор #10 -: Dec 21, 2019, 13:48 »
Яко! Благодаря, p4p!

~~~
Опитах да видя адреса с помощта и видях нещо интересно. Реших да го разгледам, но обърках адреса (не изтрих едното двуеточие),

Вижте, какво получих от:

https://wttr.in/::bash.function

Цитат
Не успяхме да открием вашето местоположение
така че ви доведохме в Оймякон,
едно от най-студените постоянно обитавани места на планетата.

Този Игор, освен, че е гениален, има и добро чувство за хумор.
« Последна редакция: Dec 21, 2019, 13:57 от go_fire »
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

4096bits

  • Напреднали
  • *****
  • Публикации: 3345
    • Профил
Re: curl
« Отговор #11 -: Dec 21, 2019, 15:01 »
Яко! Благодаря, p4p!

~~~
Опитах да видя адреса с помощта и видях нещо интересно. Реших да го разгледам, но обърках адреса (не изтрих едното двуеточие),

Вижте, какво получих от:

https://wttr.in/::bash.function

Цитат
Не успяхме да открием вашето местоположение
така че ви доведохме в Оймякон,
едно от най-студените постоянно обитавани места на планетата.

Този Игор, освен, че е гениален, има и добро чувство за хумор.
На мен ми излизаше същото при всеки опит да извадя времето за Видин. Както споменах, при нито един от вариантите, които пробвах, не ми се получи. И ми излизаше точно същото :D
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

programings

  • Напреднали
  • *****
  • Публикации: 184
  • Distribution: Arch Linux, BunsenLabs Linux, FreeBSD
  • Window Manager: XFCE, MATE, Openbox
    • Профил
Re: curl
« Отговор #12 -: Dec 21, 2019, 16:08 »
Ако е само да се вземат различни метеорологични параметри и да се използват в скрипт, който например ги показва в статус лентата, праща ги нанякъде и т.н., може да се използва всеки един сайт за времето като източник на данни, като с cURL взимаме HTML-а и го парсваме с туул като pup например - https://github.com/ericchiang/pup (писан на Go и много добре оптимизиран). Така реално няма квоти за брой заявки, каквито налагат повечето API-та.

Преди време си бях написал подобен скрипт, за да си изпращам времето на пейджъра на определен интервал от време (ползвам у дома стар пейджър, свален на двуметровия радиолюбителски обхват, с едно Raspberry Pi за предавател, което излъчва високочестотни сигнали през GPIO-тата си, за да получавам известия от Nagios, новини, и други).

Та, например за Sinoptik:

Код:
data=(curl -s 'https://www.sinoptik.bg/dobrich-bulgaria-100726418')

#температура в градуси
a=$(echo $data | /home/pi/pup 'span[class="wfCurrentTemp"]' | tr -dc '0-9','-')

#температура - усеща се
b=$(echo $data | /home/pi/pup 'span[class="wfCurrentFeelTemp"]' | tr -dc '0-9','-')

#вятър - метри в секунда
c=$(echo $data | /home/pi/pup ':contains("m/s")' | grep -Eo '\b[0-9]+\.[0-9]+\b' | head -n 1)

#вероятност за валежи
d=$(echo $data | /home/pi/pup ':contains("%")' | grep -Eo '[0-9]{1,2}' | head -n 1)

#атмосферно налягане
e=$(echo $data | /home/pi/pup ':contains("hPa") text{}' | grep -o '[[:digit:]]*' | head -n 1)

#времето словом (напр. ясно, облачно)
f=$(echo $data | /home/pi/pup 'strong text{}' | head -n 1)

#влажност
g=$(echo $data | /home/pi/pup ':contains("%") text{}' | sed '3!d' | grep -o '[[:digit:]]*')

#фаза на луната
h=$(curl -s 'https://www.sinoptik.bg/moon-phase' | /home/pi/pup 'span[class="wf5dayRighValue wf5dayRightMoonPhaseValue"] text{}' | sed '/^[[:space:]]*$/d' | sed -e 's/^[ \t]*//' | head -n 1)

#вятър - словом (напр. слаб, умерен, силен)
i=$(echo $data | /home/pi/pup ':contains("m/s") text{}' | sed '/^[[:space:]]*$/d' | head -2 | tail -1)

Съответно си сменяте линка в първия cURL, така че да съответства на този за вашия град в Sinoptik.
« Последна редакция: Dec 21, 2019, 16:53 от programings »
Активен

ddantgwyn

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 1133
    • Профил
Re: curl
« Отговор #13 -: Dec 21, 2019, 17:46 »

Код:
$ curl --header "Accept-Language: bg-BG" wttr.in

Това при мен свърши работа и изкара в терминала на български

Сега остава да го излъжем да ни дава за местоположение, което искаме. Защото по IP мен ме прави софиянец, а и не съм само аз.

това го може от години :)

я виж какъв резултат ще ти даде ::)

[nick@amasing ~]$ curl wttr.in/Оймякон,Россия
Активен

--
the lamer's team honourable member

Naka

  • Напреднали
  • *****
  • Публикации: 2713
    • Профил
Re: curl
« Отговор #14 -: Dec 21, 2019, 18:19 »
Много старо  :) Изберете си една команда от трите.

telnet towel.blinkenlights.nl

curl towel.blinkenlights.nl:23
nc towel.blinkenlights.nl 23

На последните две май трябва да се натиска клавиш за следваща страница. А излизането от  telnet е с ctrl + ] и след това quit. Аз лично съм любител на netcat 8)
« Последна редакция: Dec 21, 2019, 18:37 от Naka »
Активен

Perl - the only language that looks the same before and after encryption.

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Убунто проблем php , curl
Настройка на програми
Диян Господинов 5 1437 Последна публикация Mar 08, 2009, 01:22
от neter
curl AJAX
Web development
edmon 6 1540 Последна публикация Jun 14, 2010, 15:01
от BULFON
CURL и алтернативи
Web development
qwerty11 6 1874 Последна публикация Sep 06, 2010, 13:46
от b2l
curl и wget
Настройка на програми
anonym 8 1734 Последна публикация Dec 29, 2013, 16:13
от BRADATA