Привет нужна помощь на одной странице имеется ссылка нужно чтобы при нажатии на кнопку эта ссылка появлялась в Edit1 Вот HTML код <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>I-URL - сервис сокращения ссылок</title> </head> <body bgcolor="black" style="color: white; text-align: center; margin: 50px 50px 50px 50px"> <font size="12">I-URL</font><br/> <big>Сервис сокращения ссылок</big> <br/><br/><br/> <big><font color="red"> Ваша ссылка: <br/><b>http://i-url.ru/25</b></font></big> <br/><br/><br/> <small>(c) <a href="http://identsoft.org">IDENT Software</a></small> </body> Вот ссылка которую надо вытащить http://i-url.ru/25
В данном случае можно так: S:= код страницы сюда delete(s,1,AnsiPos('Ваша ссылка',s)); delete(s,1,Ansipos('http',s)); delete(s,AnsiPos('<',s),length(s)); edit1.text:=s;
я что то недопонимаю вот мои наброски procedure TForm1.Button2Click(Sender: TObject); var i:integer; s:string; html_tag: variant; begin html_tag:=WebBrowser1.OleObject.Document.forms.item(0).elements; for i:=0 to (html_tag.length-1) do begin if (html_tag.item(i).name='url') then html_tag.item(i).value:=edit1.Text; if (html_tag.item(i).value=' Получить короткую ссылку! ') then html_tag.item(i).click; end; end; Надо после нажатия ссылка выявлялась в Edit2 использую WebBrowser1
Уважаемый Вы извращенец Получайте любым способом код страницы в переменную и используйте тот код который я вам дал, зпмените только edit1 на edit2
Сам ты извращенец! Я такой код пробовал не сработало мне нужен другой код И переменная типа интеджер или стринг?
Вообще нафига стока мучений. если линк к веббраузере, то юзай его COM. и перечисляй линки на странице. Code: var i: Integer; begin for i := 0 to Webbrowser1.OleObject.Document.links.Length - 1 do memo1.Lines.Add(Webbrowser1.OleObject.Document.Links.Item(i)); из них найдешь свою
Работать приведеный выше код и небудет, поскольку ТС не уточнил, что сайт возвращает страницу в UTF-8. вобщем ТС, решил не мучать твою детскую психику - держи функцию для получения сокращенной ссылки: Code: function GetShortURL(LongURL:string):string; var http:TIdHTTP; PostData:TStringList; s:string; begin PostData:=TStringList.Create; PostData.Add('url='+LongURL); PostData.Add('ok=Ïîëó÷èòü êîðîòêóþ ññûëêó!'); http:=TIdHTTP.Create(nil); s:=http.Post('http://i-url.ru/', PostData); PostData.Free; http.Free; delete(s, 1, pos(AnsiToUTF8('Âàøà ññûëêà: <br/><b>'), s)+length(AnsiToUTF8('Âàøà ññûëêà: <br/><b>'))-1); result:=copy(s, 1, pos('</b>', s)-1); end; пример использования: Code: Edit2.Text:=GetShortURL('http://mysite.com/index.php?do=adsad&dasd=fsd'); P.S. в USES добавь Code: IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,IdHTTP