Entwickler-Ecke

Off Topic - Suche Software die automatisch im Internet nach Texte sucht


Biarchiv - Do 29.10.09 19:10
Titel: Suche Software die automatisch im Internet nach Texte sucht
Hallo,

suche Software die automatisch im Internet nach Texte suchen kann sowie auch im Quelltext. Diese Software sollte sich verschiedest einstellen lassen. Wie es sollte alle Links auf einer HTML-Seite folgen und dort nach einer bestimmten Text im Sourcecode oder Webseite suchen.


Critter - Do 29.10.09 19:30

Eine Software die im Internet nach Text sucht?

Also so etwas wie [url=http://www.google.de]google[/url], [url=http://www.bing.de]Bing[/url], ixquick [https://www.ixquick.com/deu/] oder exalead [http://www.exalead.com/search/]? Sorry, ich verstehe den Clou der von dir gesucheten Software noch nicht.

critter


Biarchiv - Do 29.10.09 19:45

Hallo,

ne SEOS gehen nicht.

Es geht mir um eine Software (Windows-Basis) bei die wenn ich auf einen Link angebe:
zb mylink/partner.htm Das dieses Tool alle dort gefunden Links folgt und nach einer bestimmten Zeichenfolge im Text und/oder Quelltext die Funde anzeigt. Dieses Tool sollte vielfältig im Suchen von Informationen im Internet einstellbar sein. Wie könnten die heißen?


Dude566 - Do 29.10.09 19:48

Wie wäre es mit einem HTMl Parser? :roll:


Apuch - Fr 30.10.09 18:18

wget und geschiktes greppen (kommando grep). Sind zwar Linux-Befehle aber zumindest wget gibts für M$ Windoze


thepaine91 - Fr 30.10.09 19:23

Ersteller hat folgendes geschrieben:

Texte suchen kann sowie auch im Quelltext.

Im Quelltext steht doch der ganze "Text" drinne.

Oder sehe ich das falsch.


Bergmann89 - Fr 30.10.09 21:04

Hey,

so schwer sollte das doch nicht sein:
- HTTPIndy-Komponente, die den Code vom Link besorgt,
- alle weiterführenden Links in ne Stringliste speichern
- in der aktuellen Seite nach dem Text suchen, wen gefunden Links zurückgeben
- Link-StringListe abarbeiten...

(das ganze sollte man noch durch ne max. Tiefe begrenzen, sonst sucht er sich zu tode...)

MfG Bergmann


Andreas L. - Fr 30.10.09 21:12

user profile iconBergmann89 hat folgendes geschrieben Zum zitierten Posting springen:

(das ganze sollte man noch durch ne max. Tiefe begrenzen, sonst sucht er sich zu tode...)


Und am besten in einen Thread packen.


Bergmann89 - Fr 30.10.09 21:50

So in etwa?!


Andreas L. - Fr 30.10.09 22:30

Du musst die Search-Routine schon in den Thread packen und nicht in der Form implementieren. Außerdem sollte darf man nicht von einem Thread aus direkt auf die VCL zugreifen. Schau dir mal Methode Synchronize an. Genauer hab ich mir den Code jetzt gar nicht angeschaut...


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:
type
  TOnSearchCompleteEvent = procedure(FoundURLs: TStrings) of object;

  THTTPSearch = class(TThread)
  private
    FStartURL: String;
    FMaxLevel: Integer;
    FFoundURLs: TStrings;
    FOnSearchComplete: TOnSearchCompleteEvent;
  protected
    procedure SyncEvent;
    procedure Search; 
  public
    constructor Create; override;
    destructor Destroy; override;
    procedure Execute; override;
  published
    property StartURL: String read FStartURL write FStartURL;
    property MaxLevel: Integer read FMaxLevel write FMaxLevel;
    property OnSearchComplete: TOnSearchCompleteEvent read FOnSearchComplete write FOnSearchComplete;
  end;

  TForm1 = class(TForm)
    procedure FormShow(Sender: TObject);
    //OnDestroy nicht vergessen
    procedure Button1Click(Sender: TObject);
    ...
  private
    FSearchThread: THTTPSearch;
  end;

{ THTTPSearch}
constructor THTTPSearch.Create;
begin
  inherited Create(True);
  FFoundURLs := TStringList.Create;
  FLevel := 10;
end;

destructor THTTPSearch.Destroy;
begin
  FFoundURLs.Free;
  inherited Destroy;
end;

procedure THTTPSearch.Execute;
begin
  if FStartURL <> '' then
    Search;
end;

procedure THTTPSearch.Search;
var
  http: TIdHTTP;
begin
  http := ....
  ....
  ...
  //Gefunde URLs zur Liste hinzufügen
  //Die Routine muss immer wieder aufgerufen werden bis man alle URLs durch hat
  
  //Zum Schluss das OnSearchComplete-Ereignis aufrufen
  Synchronize(SyncEvent);
end;

procedure THTTPSearch.SyncEvent;
begin
  if Assigned(FOnSearchComplete) then
    OnSearchComplete(FFoundURLs);
end;

{ TForm1 }
procedure TForm1.FormShow(Sender: TObject);
begin
  SearchThread := THTTPSearch.Create;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  SearchThread.StartURL := Edit1.Text;
  SearchThread.Execute;
end;


Alles ungetestet, aber sicherlich ne Basis um dran weiterzumachen. In dem Sinne: Viel Spaß ;-)


thepaine91 - Fr 30.10.09 22:59

Sollte das nicht der Thread ersteller selbst Programmieren? :D


Andreas L. - Sa 31.10.09 10:34

user profile iconthepaine91 hat folgendes geschrieben Zum zitierten Posting springen:
Sollte das nicht der Thread ersteller selbst Programmieren? :D


Ist doch nur ein Leitfaden, bis der Thread wirklich funktioniert sind schon noch ein paar Zeilen Code nötig ;-)


Boldar - Sa 31.10.09 12:02

mmh... Warum denke ich nur irgendwie sofort daran, dass sich hier jemand einen Harvester bauen will?


Andreas L. - Sa 31.10.09 12:10

user profile iconBoldar hat folgendes geschrieben Zum zitierten Posting springen:
mmh... Warum denke ich nur irgendwie sofort daran, dass sich hier jemand einen Harvester bauen will?


Das wäre natürlich möglich, vielleicht möchte er aber einfach nur Seiten auf Copyrightverletzungen überprüfen (Text einfach kopiert, o. ä.). Das kann ich zwar nicht gut heißen ist aber legal.


thepaine91 - Sa 31.10.09 13:03

Naja ich bezweifel aber das er einen "Harvester" hinbekommen wird. Außer ihr programmiert es vor. ;)


Bergmann89 - Sa 31.10.09 17:32

Hey,

was is n "Harvester"? Google spuckt mir nur irgendwelche landwirtschaftlichen Gesellschaften und Maschinen aus xD

@Andreas L.: so oft hab ich noch nich mit Threads gearbeitet... Aber die Thread-Klasse von dir sieht gut aus, die werd ich mir ma speichern, wenn ich ma wieder was mit Thread machen muss ^^

LG


Andreas L. - Sa 31.10.09 17:41

user profile iconBergmann89 hat folgendes geschrieben Zum zitierten Posting springen:

was is n "Harvester"? Google spuckt mir nur irgendwelche landwirtschaftlichen Gesellschaften und Maschinen aus xD


Ein Tool um z. B. E-Mail-Adressen aus Websites zu extrahieren. Die kann man dann bspw. für SPAM verwenden.


Biarchiv - So 01.11.09 13:53

user profile iconAndreas L. hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconBergmann89 hat folgendes geschrieben Zum zitierten Posting springen:

was is n "Harvester"? Google spuckt mir nur irgendwelche landwirtschaftlichen Gesellschaften und Maschinen aus xD


Ein Tool um z. B. E-Mail-Adressen aus Websites zu extrahieren. Die kann man dann bspw. für SPAM verwenden.


Email-Extractoren gibt es massenweise. Ist die Indy9-Version von D2006 Prof. die aktuellste 9er? Kann sein das Indy etwas instabil ist. Hatte mal damit einen XML-Submitter für Download-Portale entwickelt. Nun gibts dafür schon Software.