|
#16
|
|||
|
|||
Цитата:
Почитай тут http://bash.org.ru/webmaster Код:
Ты давно хотел разместить на своем сайте цитату с bash.org.ru, но не знаешь, как? Не беда, этот раздел тебе поможет. Система крайне проста и требует лишь самого базового знания HTML. Необходимо и достаточно разместить в любом удобном тебе месте на твоем сайте следующий фрагмент кода: <div style="border: 1px solid #9999bb; background: #f0f0ff; padding: 5px; font-family: 'Monaco', 'Courier New', monospace; font-size: 10pt;"> <script language="JavaScript" type="text/javascript" src="http://bash.org.ru/forweb/"> </script> </div> Так как мне нужно не на сайт, а в прогу, то я вместо сайта вписал этот скрипт в Html документ. А хранится он на моём FTP. Если его просто открыть то получится просто цитата. Никакого "моего сайта" нет. Цитата:
Последний раз редактировалось nex, 13.01.2011 в 21:37. |
#17
|
|||
|
|||
Ну можно спомщью IdHTTP.Get() отправить запрос на 'http://bash.org.ru/forweb/' и получить цитату+всякий бред, распарсить ее и вывести в Memo но здесь действует 10 сек лимит
Как вариант можно отправлять запрос на 'http://bash.org.ru/quote/'+IntToStr(Index), где Index это номер цитаты (сейчас он от 1 до 409301) выбрасываешь простым рандомом, получаешь страницу, парсишь ее и выводишь нудное опять же в memo |
#18
|
|||
|
|||
Цитата:
А вот это НЕПЛОХАЯ мысля))) Спасибо. НО Выведется же вся страница.. а нужно отсеять только цитату... Как можно организовать Парсинг, на моём примере? Последний раз редактировалось nex, 13.01.2011 в 20:58. |
#19
|
|||
|
|||
Цитата:
На самом деле, все давольно просто: Вот страница баша с цитатой: Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>bash.org.ru - Цитатник Рунета</title> <link rel="shortcut icon" href="http://s.bash.org.ru/favicon.ico" type="image/vnd.microsoft.icon"> <link rel="stylesheet" type="text/css" media="screen" href="http://s.bash.org.ru/screen.css?643545321542"> <link rel="stylesheet" type="text/css" media="handheld" href="http://s.bash.org.ru/mobile.css"> <link rel="alternate" title="Bash.org.ru RSS" href="http://bash.org.ru/rss/" type="application/rss+xml"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <script src="http://s.bash.org.ru/mtools.js" language="JavaScript" type="text/javascript" charset="windows-1251"></script> </head> <body> <div id="navstrip"><b>[bash.org.ru]</b> [<a href="http://ithappens.ru">IT Happens</a>] [<a href="http://zadolba.li">zadolba.li</a>]<img src="http://o.hai.lolwut.ru/" width="0" height="0" style="visibility: hidden;"></div><div id="page"> <div class="header"><a href="/"><img src="http://s.bash.org.ru/logo.gif" width="300" height="40" alt="bash.org.ru" /></a><p>bash.org.ru —*Цитатник Рунета</p></div> <div class="menu"><div class="menublock"> цитаты: [<a href="/">последние</a>] [<a href="/random">случайные</a>] [<a href="/best">лучшие</a>] [<a href="/byrating">по рейтингу</a>] [<a href="/rss">RSS</a>] [<a href="http://twitter.com/b_o_r/" target="blank">Twitter</a>] <br>бездна: [<a href="/abyss">Бездна</a>] [<a href="/abysstop">топ Бездны</a>] [<a href="/abyssbest">лучшее Бездны</a>] [<a href="/add">добавить</a>] <br>что-то: [<a href="/comics">комикс</a>] [<a href="/faq">ЧаВО</a>] [<a href="http://maillist.ru/81859/" target="blank">рассылка</a>] [<a href="/webmaster">вебмастеру</a>] </div> <div class="searchblock"> введите текст или номер цитаты: <form action="/"><input type="text" name="text" value="" class="searchbox"> <input type="submit" value="Найти" class="button"></form> </div> <br style="clear: both;"> </div> <div id="quotes"> <div class="q"> <div class="vote"> <a href="/quote/77">77</a> [ <span id="v77">2259</span> ] <a href="/quote/77/rulez" onclick="v(77, 0, 0); return false;">смешно</a> / <a href="/quote/77/bayan" onclick="v(77, 2, 0); return false;">[:||||:]</a> / <a href="/quote/77/sux" onclick="v(77, 1, 0); return false;">не смешно</a> / утверждена 2004-08-31 в 09:32 </div> <div><PPDV> Слт, сделай мне whois <br /><fox_> только нежно! =) </div> </div> <div class="q"><div><center><iframe src="http://lol.bash.org.ru/_ad.php?zone=zone:3" allowtransparency="true" class="b600" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" name="ctf" id="ctf"></iframe></center></div></div><hr class="iq"><div class="q"><div><a href="/gogogo/30300" target="_blank">Новый магазин лицензионного контента Trava.ru: тысячи треков любимых исполнителей, хит-парад твоего настроения!</a><img src="http://ad.adriver.ru/cgi-bin/rle.cgi?sid=1&bt=21&ad=245605&pid=495577&bid=920467&bn=920467&rnd=437997164" width="0" height="0"></div></div> </div> <div class="menu">цитаты: [<a href="/">последние</a>] [<a href="/random">случайные</a>] [<a href="/best">лучшие</a>] [<a href="/byrating">по рейтингу</a>] [<a href="/rss">RSS</a>] [<a href="http://twitter.com/b_o_r/" target="blank">Twitter</a>] <br>бездна: [<a href="/abyss">Бездна</a>] [<a href="/abysstop">топ Бездны</a>] [<a href="/abyssbest">лучшее Бездны</a>] [<a href="/add">добавить</a>] <br>что-то: [<a href="/comics">комикс</a>] [<a href="/faq">ЧаВО</a>] [<a href="http://maillist.ru/81859/" target="blank">рассылка</a>] [<a href="/webmaster">вебмастеру</a>] </div> <hr><center class="badges"><!--Rating@Mail.ru LOGO--><a target=_top href="http://top.mail.ru/jump?from=901403"><img src="http://top.list.ru/counter?id=901403;t=49;l=1" border=0 height=31 width=88 alt="Рейтинг@Mail.ru"/></a> <!--/LOGO--><!--LiveInternet logo--><a href="http://www.liveinternet.ru/click" target=_blank><img src="http://counter.yadro.ru/logo?15.1" border=0 title="LiveInternet" alt="" width=88 height=31></a><!--/LiveInternet--> <a href="http://www.yandex.ru/cy?base=0&host=bash.org.ru"><img src="http://www.yandex.ru/cycounter?bash.org.ru" width="88" height="31" alt="Индекс Цитирования Яndex" border="0"></a> <!--Openstat--><span id="openstat926575"></span><script type="text/javascript"> var openstat = { counter: 926575, image: 5041, next: openstat, track_links: "all" }; document.write(unescape("%3Cscript%20src=%22http" + (("https:" == document.location.protocol) ? "s" : "") + "://openstat.net/cnt.js%22%20defer=%22defer%22%3E%3C/script%3E")); </script><!--/Openstat--> </center> <hr><small>Идея проекта © bash.org. <br>Реализация и плюшки © 2004—2011, команда bash.org.ru. <br><a href="http://lolwut.ru/bash.org.ru.html">Информация для рекламодателей</a>. По другим поводам: <a href="mailto:%20su%70por%74%40%62ash%2e%6f%72%67.r%75">support@bash.org.ru</a>. </small> </div> <!--Rating@Mail.ru COUNTER--><script language="JavaScript" type="text/javascript"><!-- d=document;var a='';a+=';r='+escape(d.referrer) js=10//--></script><script language="JavaScript1.1" type="text/javascript"><!-- a+=';j='+navigator.javaEnabled() js=11//--></script><script language="JavaScript1.2" type="text/javascript"><!-- s=screen;a+=';s='+s.width+'*'+s.height a+=';d='+(s.colorDepth?s.colorDepth:s.pixelDepth) js=12//--></script><script language="JavaScript1.3" type="text/javascript"><!-- js=13//--></script><script language="JavaScript" type="text/javascript"><!-- d.write('<img src="http://top.list.ru/counter'+ '?id=901403;js='+js+a+';rand='+Math.random()+ '" height=1 width=1/>') if(11<js)d.write('<'+'!-- ')//--></script><noscript><img src="http://top.list.ru/counter?js=na;id=901403" height=1 width=1 alt=""/></noscript><script language="JavaScript" type="text/javascript"><!-- if(11<js)d.write('--'+'>')//--></script><!--/COUNTER--> <!--LiveInternet counter--><script type="text/javascript"><!-- document.write("<img src='http://counter.yadro.ru/hit?r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+ ";"+Math.random()+ "' width=1 height=1 alt=''>")//--></script><!--/LiveInternet--><script type="text/javascript"> var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); </script> <script type="text/javascript"> var pageTracker = _gat._getTracker("UA-3271837-1"); pageTracker._initData(); pageTracker._trackPageview(); </script> </body> </html> При этом я позволил себе сделать текст самой цитаты жирным можно получить этот текст посредством get-запроса на сайт. И используя элементарную функцию Pos найти это место Код:
<div class="vote"> <a href="/quote/77">77</a> [ <span id="v77">2259</span> ] <a href="/quote/77/rulez" onclick="v(77, 0, 0); return false;">смешно</a> / <a href="/quote/77/bayan" onclick="v(77, 2, 0); return false;">[:||||:]</a> / <a href="/quote/77/sux" onclick="v(77, 1, 0); return false;">не смешно</a> / утверждена 2004-08-31 в 09:32 </div> <div><PPDV> Слт, сделай мне whois <br /><fox_> только нежно! =) </div> </div> или что-то вроде этого. Удалить все кроме Код:
<PPDV> Слт, сделай мне whois <br /><fox_> только нежно! =) Заменить <br /> на #13, а < и > на < и > соответственно. Ещё не помешалобы проверить на другие символы html, которые отображаются как &<что-то>;, и заменить это на нормальный символ. После чего сделать Код:
Memo1.Lines.Text:=quote; //где quote - переменная, хранящая цитату. |
#20
|
|||
|
|||
Если посмотреть исходный код то цитата
Код:
... <div>Цитата...</div> ... Затем нужно правильно обработать внутренние теги типа <br> в принципе выше написано все подробнее =) |
#21
|
|||
|
|||
Цитата:
Там <div> дважды встречается.. хотя да, можно сначала найти первый и до него все стереть и после </div>, а за тем обзаботать внутренний <div> где уже сама цитата |
#22
|
||||
|
||||
Пользуй регулярные выражения и будет тебе счастье.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#23
|
||||
|
||||
Цитата:
http://bash.org.ru/random IP 174.122.62.84 Хост bash.org.ru Код страны US Страна United States Код региона TX Регион Texas Город Houston твоя прога усердно начала посылать запросы на cc.crimson-land.ru -- TCP к чему бы это? http://www.google.ru/search?hl=ru&so...3%D0%BA+Google Гггг)) еще одна мысль - знающие люди поймут: Прога распостраняется и на чинает Досить определенные сайты) Последний раз редактировалось Konrad, 13.01.2011 в 22:50. |
#24
|
|||
|
|||
Konrad похоже, это паранойя - в любой программе видеть вредоносное ПО
|
#25
|
||||
|
||||
ПОЗДРАВЛЯЮ ВСЕХ СО СТАРЫМ НОВЫМ ГОДОМ!!!!!
Цитата:
Ахахаах!!! А ты зайди на cc.crimson-land.ru да посмотри, что там я храню всякую всячину. Среди всего там есть и Файл bashorg.html Я же писал ранее ,что файл храню на своём FTP от своего же сайта crimson-land.ru. Хостинг то оплачен)) чё место терять))) Цитата:
Это, как правильно написал ChinYan Цитата:
Цитата:
А подскажите, каким кодом можно найти первый <div>? Я вот неврублюсь , как найти что то из кода страницы... Или где бы статейку почитать... Буду очень благодарен. и... СПАСИБО Вам, за вашу помощь советами. Я вообще в дельфи мало что знаю...Вот, как видите, практикуюсь...учусь. Последний раз редактировалось nex, 14.01.2011 в 00:51. |
#28
|
||||
|
||||
Для выдирания нужного текста из другого текста используй регулярные выражения. На много облегчит тебе жизнь.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#29
|
|||
|
|||
Цитата:
Ты уже 2рой раз пишешь про это... А обьяснить можешь как и для чего это? |
#30
|
||||
|
||||
http://ru.wikipedia.org/wiki/%D0%A0%...BD%D0%B8%D1%8F
Регулярные выражения помогут тебе спарсить сайт вот и все... Помогаю за Спасибо |