![]() |
|
|
#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
|
||||
|
||||
|
Пользуй регулярные выражения и будет тебе счастье.
|
|
#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
|
||||
|
||||
|
Для выдирания нужного текста из другого текста используй регулярные выражения. На много облегчит тебе жизнь.
|
|
#29
|
|||
|
|||
|
Цитата:
Ты уже 2рой раз пишешь про это... А обьяснить можешь как и для чего это? |
|
#30
|
||||
|
||||
|
http://ru.wikipedia.org/wiki/%D0%A0%...BD%D0%B8%D1%8F
Регулярные выражения помогут тебе спарсить сайт вот и все... |