Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: poszukuję robota sieciowego
Forum PHP.pl > Forum > PHP
klonmarcin
witam, czy ktoś zna lub wie jak zrobić robota sieciowego do wyciągania ofert sklepów internetowych i zapisu do pliku csv??
czy takie coś można zrobić w php czy lepiej np w perlu?? czy taki robot jest bardzo trudny do zrobienia??

bardzo proszę o pomoc lub przynajmniej jakieś wskazówki rolleyes.gif
Fifi209
Ja bym spróbował z cURL ?winksmiley.jpg
klonmarcin
a może z wyrażeniami reguralnymi??

a jak zrobić zapis do pliku csv??
erix
fwrite" title="Zobacz w manualu PHP" target="_manual

Są gotowe klasy obsługujące pliki CSV; poszukaj na phpclasses.org.
seba_bwo
Takowy robot nie jest trudny do zrobienia.
Pobieramy dane ze strony najlepiej cURL em.
Następnie wyrażeniem/ami regularnymi wyszukujemy i "wypluwamy" do tablicy elementy dla nas najpotrzebniejsze (cena, data, itp itd).
Czasami trzeba wybrać z jednej strony linki do produktów i dopiero na stronie danego produktu wyszukać w/w informacji. Należy wtedy z pierwszej strony wybrać same linki i zwrócić je w tablicy, następnie (ciągle cURLem) poszukujemy na stronach potrzebnych nam informacji i ponowie zapisać je do tablicy.
Na koniec zostaje nam zapisanie wszystkiego do pliku można użyć funkcji implode (o ile wygląd nie jest skomplikowany). Do zapisania pliku może się przydać funkcja file_put_contents.

Poniżej są przykłady prostych robotów, jeden działa na cURL drugi na file_get_contents
Kod
http://peb.pl/1427157-post11.html
http://peb.pl/1966434-post2.html


Zapoznaj się z podstawami wyrażeń regularnych oraz ich implementacji w php.
klonmarcin
dzięki za pomoc zobaczę co z tego wyjdzie guitar.gif
do zapisu do pliku csv to znalazłem coś takiego

function prepareCSV($aData, $sSeparator)
{
$aCSV = array();

foreach($aData as $aRow) {
$aCSV[] = implode($sSeparator, $aRow);
}

return implode("\n", $aCSV);
}
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.