Entwickler-Ecke
Freeware Projekte - Song-Catcher(Ein Kleines Prog)
IceBube - So 22.04.07 16:56
Titel: Song-Catcher(Ein Kleines Prog)
Hallo! :wink2:
Hab ein kleines Programm geschrieben, mit dem man Liedertexte aus dem Web holen kann, ist nix besonderes, ich dacht mir mal ich zeigs euch.
Man kann den Liedertext, wenn einer gefunden wurde, dann auch auf die Festplatte speichern, und das wars eigentlich schon....
Das Programm legt eine Datei im Programm Verzeichnis an('lied.tmp)....
getestet unter WinXP
lg
Gausi - So 22.04.07 17:04
Hmmm...das ist so ein Prog, wo ich gerne den Quelltext sehen würde, wie du das machst. Wie suchst du, wo suchst du, und wie filterst du evtl. mehrere Ergebnisse?
Lässt sich das erweitern, dass man evtl. bei einem "falschen Treffer" weiter suchen kann? Oder spezifischer nach Interpret und Titel?
Fighter#1 - So 22.04.07 17:12
Also an sich find ich das Programm von der Idee nicht schlecht.
Leider find ich fast kein Lied ... einmal hab ich eins gefunden, aber dass war dann nicht das was ich wollte :-( einmal war ein langer HTML-Text da ... naja, zufriedenstellend ist es jedenfalls noch nicht.
Also ich dachte erst ich müsste oben Interpret angeben, aber dann kommt ja garnix ... und wenn ich nen Titel angeb kommt wiegesagt auch fastnix.
Verfeiner das Programm vll noch einbissel :-)
Auf welcher Seite suchst du denn`?
IceBube - So 22.04.07 17:16
hallo!
ja, man kann die Funktion noch besser machen, ich hab jetzt schnell mal das Programm geschrieben, in einer halben stunde....es geht leider nicht bei allen Liedertext seiten, aber ich hab eine gefunden da konnte ich liedertexte rausfiltern
Hier der Quelltext >> nix großartiges :=)
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99:
| function Convert(Filename:string):string; var IDoc: IHTMLDocument2; Strl: TStringList; sHTMLFile: string; v: Variant; Links: IHTMLElementCollection; i: Integer; Link: IHTMLAnchorElement; begin sHTMLFile := FileName; Strl := TStringList.Create; try Strl.LoadFromFile(sHTMLFile); Idoc := CreateComObject(Class_HTMLDOcument) as IHTMLDocument2; try IDoc.designMode := 'on'; while IDoc.readyState <> 'complete' do Application.ProcessMessages; v := VarArrayCreate([0, 0], VarVariant); v[0] := Strl.Text; IDoc.Write(PSafeArray(System.TVarData(v).VArray)); IDoc.designMode := 'off'; while IDoc.readyState <> 'complete' do Application.ProcessMessages; Form1.Memo1.Lines.Text := IDoc.body.innerText; finally IDoc := nil; end; finally Strl.Free; end; end;
procedure TForm1.Button1Click(Sender: TObject); var a,b,c : integer; begin for a := 0 to Length(Edit1.Text) do begin Edit1.SelStart := a; Edit1.SelLength := 1; if Edit1.SelText = ' ' then Edit1.SelText := '+'; end;
Memo2.Text := http.Get('http://www.i-songtexte.com/index.php?action=search&q=title&string='+Edit1.Text);
for a := 5600 to Length(Memo2.Text) do begin Application.ProcessMessages; Progressbar1.Max := Length(Memo2.Text); PRogressbar1.Position := a;
Memo2.SelStart := a; Memo2.SelLength := Length('href="http://www.i-songtexte.com/');
if Memo2.SelText = 'href="http://www.i-songtexte.com/' then begin
for b := a+Length('href="http://www.i-songtexte.com/') to a+200 do begin Application.ProcessMessages; Progressbar1.Max := a+200; PRogressbar1.Position := b; Memo2.SelStart := b; Memo2.SelLength := Length('">');
if Memo2.SelText = '">' then begin
Memo2.SelStart := a+Length('href="'); MEmo2.SelLength := b-(a+Length('href="'));
try Memo1.Text := http.Get(Memo2.SelTexT); Memo1.Lines.SaveToFile('Lied.tmp'); convert('Lied.tmp'); Memo1.SelStart := Length(Memo1.Text)-634; Memo1.SelLength := 634; Memo1.SelText := ''; except ShowMessage('Keinen Songtext gefunden!'); exit; end; exit; end; end;
end; |
Zu deiner Frage ob man das Erweitern kann...sichA....ich hab aba kein Bock ghabt das zu machen,.....
Die Seite von wo ich die Liedertexte suche ist folgende:
http://www.i-songtexte.com
lg
GTA-Place - So 22.04.07 17:28
Der Source ist sehr äh... unoptimiert :lol:
Delphi-Quelltext
1: 2: 3: 4: 5:
| Memo2.SelStart := b; Memo2.SelLength := Length('">');
if Memo2.SelText = '">' then |
-->
Delphi-Quelltext
1: 2:
| if Pos('">', Memo2) > 0 then |
Außerdem solltest du nicht den HTML-Text auch im Memo anzeigen, sondern in einer Variable speichern.
IceBube - So 22.04.07 17:34
ja....ich weiß, wie gesagt hab ich es nur mal so schnell geschrieben,
irgendwie denk ich mir aba, das bringt sich eh nix, wozu braucht man sowas, kann man ja im Internet nachschaun.....
ich weiß nicht, ich bin gerade auf der suche...nach einer IDEE zu einem Programm.
lg
Gausi - So 22.04.07 17:44
Nun...ich wüsste wozu ich das gebrauchen kann :D
Hab da so einen Player geschrieben, der eine Funktion "Liedtexte holen" bisher mit Hilfe eines anderen Programms (EvilLyrics) löst. Die Texte werden dann im ID3-Tag gespeichert und können z.B. beim abspielen angezeigt werden. Wenn sich der Code nun erweitern ließe, so dass ggf. auf mehreren Seiten gesucht werden kann, wäre das extrem gut. Dann könnte ich diese Funktion von Haus aus mitliefern, und wäre nicht auf dieses andere Programm angewiesen. Bisher habe ich mich damit aber nicht beschäftigt - daher meine neugierige Nachfrage nach dem Code ;-)
Timosch - So 22.04.07 17:48
GTA-Place hat folgendes geschrieben: |
Delphi-Quelltext 1: 2: 3: 4: 5:
| Memo2.SelStart := b; Memo2.SelLength := Length('">');
if Memo2.SelText = '">' then | -->
Delphi-Quelltext 1: 2:
| if Pos('">', Memo2[b].Text[/b]) > 0 then |
|
//EDIT: Mist, wieso kann man im Delphi-Tag nicht fett schreiben? Naja egal
IceBube - So 22.04.07 22:19
ja...ich glaub ich werd bei diesem Projekt weiter machen, und mich mehr anstrengen...als vorher...
Bin gerade dabei ein Programm zu machen, das Liedertexte herunterladet und aber auch Biographien und Covers anzeigen kann.
Hab eine Neue Seite gefunden, bei der das herausfiltern der Texte supa einfach ist, geplant ist auch Akkord-Texte herunterzuladen...wenn welche vorhanden sind.
Die Seite ist perfekt, viel mehr Liedertexte und Akkorde.....
Wenn ich es schaff das Programm fertigzustellen, programmier ich vielleicht auch einen Komponenten, @Gausi --> Für deinen Player Nemp wär das eh perfekt!
Hoffe ich bekomm das alles hin...mal schaun, ich denk mir ich brauch für das Programm ne Woche, wenn nicht weniger.....
der Komponent...mal schaun...
lg
IceBube - Mo 23.04.07 18:32
^hab herum probiert und herum probiert komm aba net weiter....ein Versuch was Wert, ich geb auf *schäme mich ;/....
ich such ma liaba ein durchführbares Projekt, bei dem ich weiter komm...
lg
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!