Пишу прогу для своего инет провайдера. Написал код авторизации, всё работает. Нужно спарсить баланс со страницы и ещё пару фигнюшек. Но на странице не за что зацепиться. По тегам пробовал парсить... ничего не получилось. Кто может помочь, отпишите, вышлю код в лс. Спасибо.
баланс п.с. понял что надо искать строку <td class="td_comm td_15px td_bold" style="color: red"> и после неё вырезать до </td> но хз как это сделать...
<td class="td_comm td_15px td_bold" style="color: red">127,94</td> <td class="td_comm td_15px">руб</td>
Парсиш все в Memo , потом ищем эту строку <td class="td_comm td_15px td_bold" style="color: red">127,94</td> , потом с ней удаляем все что нинадо , и все проблемы!!
Code: var html:string; begin //тут получаем код страницы delete(html, 1, pos('<td class="td_comm td_15px td_bold" style="color: red">', html)+length('<td class="td_comm td_15px td_bold" style="color: red">')); html:=copy(html, 1, length(html)-pos('</td', html)); end; html - изначально код страницы, на выходе - баланс П. С. код не проверялся, возможно длины копируемых/удаляемых подстрок нужно увеличить/уменьшить на 1. вобщем эксперементируй)
Тебе пачер показал как , зачем целою строку парсить .. парси кусок <td class="td_comm td_15px td_bold" style="color: red"> , дале берем там символом 20 с запасом.. и все дело в шляпе!!
Я Делфи не люблю но держи ////////////////////////////////// procedure TForm3.Button1Click(Sender: TObject); var Data, X:TStringList; pos1,i:integer; begin for i := 0 to Memo1.Lines.Count - 1 do begin pos1:=Pos('<td class="td_comm td_15px td_bold" style="color:', Memo1.Lines.Strings); if (pos1 > 0) then Edit1.Text:=Memo1.Lines.Strings; end; end; /////////////////// Тут найдет тебе нужную строки и кинеть в едит. а дале сам поймеш что да как... еще нюанс сделай размеры мемо такие : Width: 657 Height: 177 Это для таго что б парсилось норм по строкам.