Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   достать "нужные" данные (http://www.flasher.ru/forum/showthread.php?t=89108)

mixey_lv 07.12.2006 20:28

достать "нужные" данные
 
Кто подскажет, по каким ключевым словам искать такую вещь:

PHP скрипт "смотрит" конкретную страницу в интернете и достает от туда нужные данные, например курс валют, погода, именины и в таком духе.

или может пример у кого есть?
Как прочесть это и потом скормить флэшу по ХМЛ-у?

Skubent 08.12.2006 12:58

Ну это называется кража контента. Воровать не есть хорошо.

mixey_lv 08.12.2006 20:57

Курс валют? разве это воровство!?!?

а по делу есть что нибудь?

Skubent 08.12.2006 21:01

По делу что ? Обращаешься к владельцу сайта на котором крутятся нужные данные, обговариваешь формат-условия-порядок обмена данными.
А в противном случае - воровство.

rtm 12.12.2006 15:56

Вложений: 1
Если отбросить вопрос о воровстве и экспорт во флеш, то в остается задача получить HTML-код страницы из сети. Это делается достаточно просто если версия PHP 4.3.0 или выше и в php.ini опция allow_url_fopen = On, то используя функцию file_get_contents():
PHP код:

$yacont file_get_contents('http://www.ya.ru/'); 

После выполнения этой строки, в случае отсутствия ошибок, в переменной $yacont будет весь код страницы http://www.ya.ru/.
Если PHP младше 4.3.0, то придется использовать функцию fsockopen():
PHP код:

$fp fsockopen("www.ya.ru"80$errno$errstr30);
$head "GET / HTTP/1.1\r\n";
$head .= "Host: www.ya.ru\r\n";
$head .= "Connection: Close\r\n\r\n";
$yacont='';
fwrite($fp$head);
while (!
feof($fp)) {
   
$yacont.= fgets($fp128);
}
fclose($fp); 

Результат будет таким же, только ещё в переменной $yacont будут HTTP-заголовки.
Но это все просты способы, для действительно сложных запросов понадобится использовать cURL или чего-то ещё.
Хотя я для сложных запросов использую класс Snoopy (см. аттач), который способовен очень на многое.

mixey_lv 12.12.2006 19:22

А как с помощют этого класса выцепить из всего html соурса, а конкретно из:
Код:

<table width=180 border=0 cellspacing=6 cellpadding=0>

<tr>
  <td><font class="colDefault"><b>EUR</b></font></td>
  <td><font class="colDefault">0,7028</font></td>
</tr>
<tr>
  <td><font class="colDefault"><b>USD</b></font></td>
  <td><font class="colDefault">0,5330</font></td>
</tr>
<tr>
  <td><font class="colDefault"><b>RUB</b></font></td>

  <td><font class="colDefault">0,0203</font></td>
</tr>
</table>

значения курса валют?

Skubent 12.12.2006 19:47

rtm, человек занимается банальным воровством, думать не хочет... Зачем ты ему помогаешь ? Думаешь, кому-то станет легче ? Да ничуть.
Сей экземпляр начнет думать, что на любой его вопрос тут же добрый дядя ответит. Причем если ты не ответишь, а пошлешь читать доки-мануалы - обидится, начнет дурно пахнуть.
На выходе получим - тебя назвали как-нибудь нехорошо, человек ничего не понял, ничему не научился. То есть ни одного плюса.

mixey_lv 12.12.2006 19:58

Цитата:

Сообщение от Skubent
rtm, человек занимается банальным воровством, думать не хочет... Зачем ты ему помогаешь ? Думаешь, кому-то станет легче ? Да ничуть.
Сей экземпляр начнет думать, что на любой его вопрос тут же добрый дядя ответит. Причем если ты не ответишь, а пошлешь читать доки-мануалы - обидится, начнет дурно пахнуть.
На выходе получим - тебя назвали как-нибудь нехорошо, человек ничего не понял, ничему не научился. То есть ни одного плюса.

глупо....

Если есть другой способ, как разместить на своем сайте погоду, курс валют etc, подскажите. То что я спросил, способ не самый удобный на мой взгляд, а другого не придумал.

Mnilionic 12.12.2006 20:00

mixey_lv для тебя http://www.akmeter.ru/

Mnilionic 12.12.2006 20:02

погода http://informer.gismeteo.ru/

mixey_lv 12.12.2006 20:05

спасибо за линки, только есть одна загвоздка. как эту "красотищу" всатвлять к себе на сайт... рука не поднимается :(

тогда уж, лучше без погоды :)

etc 12.12.2006 20:06

Между прочим, есть нормальные сервисы, которые показывают XML.
К примеру:
http://www.cbr.ru/scripts/XML_daily.asp

Mnilionic 12.12.2006 20:19

mixey_lv, без погоды? там в самом низу страницы есть инфа как получить данные в XML
Читать тоже ленимся?

Skubent 12.12.2006 20:34

mixey_lv, как я уже говорил, обращаешься к правообладателям информации, договариваешься о форматах-методах-оплатах...
Тем более, многие раздают информацию бесплатно в четко документированном виде.

rtm 12.12.2006 23:49

Цитата:

Сообщение от Skubent
rtm, человек занимается банальным воровством, думать не хочет... Зачем ты ему помогаешь ? Думаешь, кому-то станет легче ? Да ничуть.
Сей экземпляр начнет думать, что на любой его вопрос тут же добрый дядя ответит. Причем если ты не ответишь, а пошлешь читать доки-мануалы - обидится, начнет дурно пахнуть.
На выходе получим - тебя назвали как-нибудь нехорошо, человек ничего не понял, ничему не научился. То есть ни одного плюса.

Дело в том, что воровством это развать можно только с натяжкой, если конечно человек не пытается получить прибыль (материальную) с того, что в данном случае позывает погоду или курс валют, что крайне мало вероятно, так как любой желающий может найти эту инфу бесплатно в десятках мест.
А теперь прошу прощения за оффтоп.
А насчет того "Зачем ты ему помогаешь?" я скажу так: я пришел сюда, для того чтобы помочь людям решить проблемы с php. То есть как раз для того чтобы помогать. Можешь заметить я не создал здесь ни одной темы и не просил помощи. Можешь глянуть на те ответы которые я давал здесь, они максимально информативны, точный и достаточно исчерпывающи. Можно конечно сказать что не бывает таких филантропов, чтоб во всем помогать всем. Те кто так думают пусть считают, что я пришел сюда чтоб по понтаваться типа какой я умный, но это не так.
Я хочу просто поделиться своими знаниями, можно даже сказать своей головой, а если мои советы кому-то помогут я буду очень рад.
Ещё раз прошу прощения за оффтоп, уж больно меня задело это высказывание.

automatix 13.12.2006 10:13

Цитата:

Сообщение от rtm
[...] А теперь прошу прощения за оффтоп.
А насчет того "Зачем ты ему помогаешь?" я скажу так: я пришел сюда, для того чтобы помочь людям решить проблемы с php. То есть как раз для того чтобы помогать. Можешь заметить я не создал здесь ни одной темы и не просил помощи. Можешь глянуть на те ответы которые я давал здесь, они максимально информативны, точный и достаточно исчерпывающи. Можно конечно сказать что не бывает таких филантропов, чтоб во всем помогать всем. Те кто так думают пусть считают, что я пришел сюда чтоб по понтаваться типа какой я умный, но это не так.
Я хочу просто поделиться своими знаниями, можно даже сказать своей головой, а если мои советы кому-то помогут я буду очень рад.
Ещё раз прошу прощения за оффтоп, уж больно меня задело это высказывание.

Ну, оффтоп, так оффтоп...

А относительно помогать... rtm, спасибо, что такие как ты есть.

Skubent, при всем моем уважении (без малейшего намека на иронию): не слишком ли часто мы, здесь на форуме, скорее задумываются о том, чтобы "научить жить", чем о том, как по возможности понятно и лаконично ответить на поставленный вопрос? И не слишком ли много мы на себя порой в этом плане берем?

Спасибо.

Skubent 13.12.2006 13:14

Поясняю свою позицию на примере данного конкретного вопроса.
Могу заметить, что _исчерпывающим_ и _лаконичным_ ответом на него были бы ссылки на набор функций
fsockopen
file_get_contents
preg_match
preg_match_all
и спецификацию протокола HTTP и/или ссылке на curl библиотеку.

Да, последовал бы ряд вопросов по поводу врапперов в открытии файлов, по поводу опций курла, по поводу регулярных выражений и просьба показать пример HTTP запроса.
Разобравшись, человек сумел бы решать самостоятельно очень большой класс задач, включая как написание ботов, так и SMTP/POP/FTP/.... клиентов.

Сейчас же получается, что человек прибежит снова с вопросом "а почему мне все время отдают 404 страницу, а эксплорером захожу - все в порядке".

rtm, с натяжкой ?
Владелец ресурса, размещающий информацию у себя на странице имеет в виду, что почитать ее придут пользователи, он им покажет рекламу и так далее. А вот то, как и кто может распоряжаться этой информацией - регулируется законом и/или соглашением о предоставлении услуг.
К примеру, если дело дойдет до суда, обладатели того ресурса с которого ты без их согласия тягал инфу быстренько насчитают, сколько посетителей они недополучили в результате, сколько денег на рекламе потеряли и так далее. Потеря денег в результате такого рода (показа контента в урезанном виде у себя) деяния может быть и будет классифицирована юристами как-нибудь по другому, но говоря простым обывательским языком - воровство.

rtm 13.12.2006 14:05

Во-первых: о "законе и/или соглашении о предоставлении услуг" подкажите мне его. Я что смутно себе представляю закон сайта! Может быть конечно я понял не в том контексте, тогда о каком "соглашении о предоставлении услуг" вы говорите?
Во-вторых, о каком суде Вы говорите? Вы действительно считаете, что подобного плана вопрос (о "краже" погоды и курса валют) будет рассматриваться в суде? Но даже если уйти от реалий наше жизни в некоторую абстракцию и предположить что дела рассматривается в суде, призумцию не виновности ещё никто не отменял. А теперь представьте себе (коль уж вы предположили что я "ворую" информацию, я так и буду писать для удобства, но не более чем) я метедом дидукции или иными способами узнаю периодичность обновления информации на "обворовываемых" мною сайтах (предположим что у меня уже есть работающий инструмент для успешного проведения "кражи"), далее в соответствии с этими обновлениями регулярно "краду" информацию и сохраняю на локальной машине и дальше именно её я и показываю. Пожалуйста докажите теперь что я "украл" информацию, скажем о погоде, с сайта pogoda.ru, но при этом постарайтесь опровергнуть предположение что я обладаю крайне точным чувством времени (чтоб в точное время делать запросы) и что для меня очень важно получать максимально актуальную и точну информацию о погоде. И при всем при этом попробуйте судить меня по статьям об авторском праве!
Если очень хочется, то давайте устроим показательный процесс, я например не проч засветиться на ТВ и быть осужденным за кражу погоды с Вашего, Skubent, сайта.

Skubent 13.12.2006 19:55

rtm, закон РФ и/или соглашение о предоставлении услуг сайта.

automatix 13.12.2006 22:22

Цитата:

Сообщение от rtm
Я что смутно себе представляю закон сайта!

Закона такого действительно, насколько мне известно, нет. Однако это вовсе не означает, что в сети не действуют никакие законы. Конфликты возникают чаще всего на поле авторкского права и права конкуренции. В европейском праве это в настоящее время одна из особо горячих тем. Если нет "закона сайта", то есть другие применимые законы и куча судебных решений, в том числе и решений на уровне ЕС, на которые ориентируются суды пониже. Думаю, что в России с этим пока не так жестко, но направление движения наверняка то же.

Цитата:

Сообщение от rtm
Вы действительно считаете, что подобного плана вопрос (о "краже" погоды и курса валют) будет рассматриваться в суде

Да. Точнее нет -- я не считаю, я знаю.

Цитата:

Сообщение от rtm
призумцию не виновности ещё никто не отменял

Типичное заблуждение "Юриспруденция = Уголовное право". Это не так. Презумпция невиновности -- это скорее область уголовного права, а проблемы, о которых здесь идет речь, как я уже сказал, возникают в области гражданского права. Здесь, конечно платят не годами за решеткой, а деньгами, но для "нарушителя" тоже иногда приятного мало.
И самое главное в этой связи: аргумент "да, может, и нехорошо, но мне все равно ничего не будет" мне кажется, (ооочень) мягко говоря, неприемлемым. Хочется верить, по этому поводу возражений не будет.

А вообще не нужно быть юристом и уж тем более знать конкретные законы отдельно взятой страны, чтобы понимать, что пользоваться плодами деятельности другого человека без его на то согласия "нихаасо". Во-первых, потому что тезис "его не убудет" ложен -- "убудет" (например, когда уходят "рекламные клики" или когда я облегчаю продвижение своей страницы в сети за счет потенциального конкурента). А во-вторых... кроме правовых кодексов еще другие есть... но это уже совсем другая история...

Skubent 14.12.2006 12:48

Не было времени вчера расписывать, продолжаем.
Итак, допустим, я нашел методику делать прогноз погоды на 5 градусов точнее росгидромета. Ну и раздаю этот самый прогноз повышенной точности пяти партнерам за Н денег в единицу времени.
В какой-то момент я узнаю, что мой прогноз вылез на ресурсе, с которым у меня никакой договоренности нет. Я сначала иду к партнерам - мол так и так, что это вы без моего согласия мою инфу отдаете ? А они мне - знать не знаем, посетителям показываем.
Вообще, моим следующим действием становится иск в суд. Ответчик - владелец домена, на котором крутится сайт, делающий "левые" показы. Мне дела нет до того, каким образом будет происходить размещение информации, через кэш на локальном компе, напрямую с одного из сайтов моих партнеров или как-то еще. В механизме совершения преступного деяния будет разбираться следствие/суд.
А администратор домена будет первым, к кому обратятся с вопросом "а какого извините икса у вас ворованный контент ?" И невнятный бред вида "а че ? я ж не напрямую, я ж сам, ручками..." за отмазу не канает (с).

rtm 14.12.2006 13:46

2 automatix: В гражданском праве отменили-таки призумцию невиновности? Ну да и бог бы с ней.
2 Skubent: А уж если раздаещё своим партнерам за деньги такую информацию потрудитесь сделать так чтоб потенциальный преступник до неё не доблася. А то, извините, интересно получается: если я например живу на первом этаже мне удобно смотреть телевизор таким образом что он стоит на тумбочке во дворе, и я естественно не удираю домой когда я его не смотрю, следовательно в 99% вероятностью можно предположить что через некоторое не продолжительное время его украдут, то я имею полное право подавать в суд на любого прохожего, который имел несчастье пройти мимо, и уж пусть "будет разбираться следствие/суд" кто и как украл мой любимый 99-дюймой телевизор.
Возьмите пример с XMLяндекса: регистрация+запись IP+подсчет запросов в сутки. И давайте информацию только тем, кому действительно можно.
А про домены: регистрировать домены уже очень давно можно не на себя, например при покупке хостинга на срок больше 3 мес. У того же мастерхоста можно получить полностью рабочие и хостинг, и домен за символическую плату, при этом домен регается на хостинг компанию, а оплата производится их карточками.
2 All: у меня просьба к любому, заинтересованному в этом разговоре, человеку помогите найти аналогичный прецидент. Я конечно понимаю что у нас не прецидентное право судие, но все-таки хочется узнать было ли нечто подобное.

rtm 14.12.2006 14:34

А теперь про презумпцию невиновности: она - не "скорее областью уголовного права", а - право человека и гражданина, так как она описывается в Конституции РФ, статья 49.

Skubent 14.12.2006 17:35

rtm, телевизор не есть объект авторского права и не является вашей интеллектуальной собственностью.
Применительно к примеру об украденном телевизоре - человек, у которого нашли ваш телевизор становится обвиняемым.

mixey_lv 14.12.2006 22:24

ух...какая жаркая беседа получилась!

Спасибо, что открыли мне глаза по поводу "воровства" и в двойне спасибо, что тыкнули в XML линки

automatix 15.12.2006 03:17

Цитата:

Сообщение от rtm
А теперь про презумпцию невиновности: она - не "скорее областью уголовного права", а - право человека и гражданина, так как она описывается в Конституции РФ, статья 49.

Во-первых: кто читает закон, может почитать и комментарий. А вообще, если читать, то лучше внимательно -- о преступлениях и преступниках я здесь вообще не говорил. Подробности в учебниках по праву.

Во-вторых, поздравляю с успехом: почитав конституцию мы просветились и, если даже еще и не совсем понимаем, о чем говорим, но по крайней мере пишем теперь правильно: "презумпция невиновности".

В-третьих, после реплики "если раздаещё своим партнерам за деньги такую информацию потрудитесь сделать так чтоб потенциальный преступник до неё не доблася", я пришел выводу, что уголовный кодекс стоит отменить, по принципу если в Вас выстрелили, то наказывать кого-то не нужно, так как Вы сами виноваты -- нефиг из дома выходить.

На мой взгляд дискуссия себя исчерпала. Всем спасибо.

etc 15.12.2006 03:20

Кстати, если ковырнуть, то сервисы, вроде crossdomain.ru тоже нарушают закон. Правда, он сейчас работает без интерфейса, тем не менее, он работает.

rtm 15.12.2006 12:41

2 automatix: Спасибо, за расширение моего кругозора, я действительно не знал как правильно пишется "презумпция невиновности", к слову самого теримина "презумпция невиновности" в конституции нет.
2 Skubent: пример с телевизором я привел лишь для того чтобы сказать, что если у тебя есть что-то ценное, что для тебя очень дорого, и ты не хочешь легко и просто с этим расставаться, то потрудись не ставить телевизор во дворе, если конечно не собираешься за ним все время присматривать.
2 All: поддерживаю automatix в том, что и на мой взгляд тема себя исчерпала, все остались при своих мнениях :drinks:.
P.S. Берегите себя и не нарушйте закон.


Часовой пояс GMT +4, время: 07:06.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.