Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wyciągnięcie czegoś od google
chomiczek
post
Post #1





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


Witam, nie zastanawiam się czy sie da, bo zapewne sie da, ale jak.
Potrzebuje zasymulować pytanie do googla, a linki, które dostanę chciałbym zapisać sobie czy to do pliku czy to do bazy.. Pytanie tylko jak?
CURLquestionmark.gif

w zapytaniu, o które mi chodzi otrzymuje ok 400tys wyników :/

Może ktos robił cos takiego?


--------------------
created by chomiczek
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 13)
lisu
post
Post #2





Grupa: Zarejestrowani
Postów: 100
Pomógł: 0
Dołączył: 25.01.2003
Skąd: mazury, wawa

Ostrzeżenie: (0%)
-----


tak, uzyj curl. Zobacz jakie opcje sa do stronicowania i w petli pobieraj zapytanie oraz oczywiscie zmieniaj offset. Pozniej preg_match_all i wyciagasz linki smile.gif


--------------------
--
Carpe Diem
Go to the top of the page
+Quote Post
chomiczek
post
Post #3





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


qrcze cos mi nie działa preg_match_all
  1. <?php
  2. preg_match_all("/<p class=g>.*href=\"http:\/\/(.)\">.*<\/a><table/Us", $data, $matches);
  3. ?>


i nie wiem czemu? faza taka istnieje w wynikach i powinno być min. 10par.. a w tej chwili jak użyje
  1. <?php
  2. echo count($matches);
  3. ?>

to mi zwróci 2

natomiast takie wywołania:
  1. <?php
  2. for($i=0; $i<count($matches[0]); $i++) {
  3. echo 'x';
  4. }
  5. ?>

nie zwraca mi nic. Wnioskuje, że bład jest w [preg_match_all
tylko gdzie?
Aha zmienna $data przechowuje zawartość strony wpisaną poleceniem:
  1. <?php
  2. $data=curl_exec($ch);
  3. ?>

więc nie powinno byc problemu.. nie powinno ale jednak jest.

Ten post edytował chomiczek 3.03.2006, 13:01:09


--------------------
created by chomiczek
Go to the top of the page
+Quote Post
lisu
post
Post #4





Grupa: Zarejestrowani
Postów: 100
Pomógł: 0
Dołączył: 25.01.2003
Skąd: mazury, wawa

Ostrzeżenie: (0%)
-----


pobaw sie:
  1. <?php
  2. print_r($matches)
  3. ?>

i w stringu do funkcji preg_match_all pokombinuj z nawiasami, u mnie dziala np takie cos:
  1. <?php
  2. preg_match_all("(<li>(<a href=\"(.*?)\">(.*?)<\/a>))",$data,$links);
  3. ?>


--------------------
--
Carpe Diem
Go to the top of the page
+Quote Post
chomiczek
post
Post #5





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


Hmm.. piszesz, że u Ciebie działa takie coś:
  1. <?php
  2. preg_match_all("(<li>(<a href=\"(.*?)\">(.*?)<\/a>))",$data,$links);
  3. ?>

u mnie nie działa :/ i niechodzi tutaj o zmienne :/
qrcze nie mam pomysłu.


--------------------
created by chomiczek
Go to the top of the page
+Quote Post
lisu
post
Post #6





Grupa: Zarejestrowani
Postów: 100
Pomógł: 0
Dołączył: 25.01.2003
Skąd: mazury, wawa

Ostrzeżenie: (0%)
-----


hmm, u mnie dziala ale do wyciagania z innego serwisu. Musisz ten string poprawic sam winksmiley.jpg


--------------------
--
Carpe Diem
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #7





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Za takie cos google podobno banuje.

A google API? http://www.google.com/apis/


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
chomiczek
post
Post #8





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


ale co banująquestionmark.gif Przecież jeśli w CURLu sie ładnie przestawie to będzie chyba ok, np;
  1. <?php
  2. curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1");
  3. ?>

to chyba nie będzie problemu, bo co google ma zbanować.
Niezmienia to faktu, że ciągle mam puste tablice (niewiedziec czemu)


--------------------
created by chomiczek
Go to the top of the page
+Quote Post
dtb
post
Post #9





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

Ostrzeżenie: (0%)
-----


http://forum.php.pl/index.php?showtopic=40270 - 3 post - masz tam jak wyniki z google przedstawic jako xml


--------------------
Go to the top of the page
+Quote Post
chomiczek
post
Post #10





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


poradziłem sobie, ale mam problem teraz z CURL_PROXY szukam w necie i nie wiem jak ustawić, zeby mi sie dobrze łączył.. póki co zwraca mi wyniki, ale po którym przeładowaniu strony blokują mi serwer :/


--------------------
created by chomiczek
Go to the top of the page
+Quote Post
jacek14
post
Post #11





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 11.05.2006

Ostrzeżenie: (0%)
-----


Cytat(dr_bonzo @ 2006-03-03 16:15:49)
Za takie cos google podobno banuje.

nie wiecie przypadkiem czy inne wyszukiwarki ( w tym polskie) tez banuja za takie wydzieranie danych? winksmiley.jpg
Go to the top of the page
+Quote Post
Diabl0
post
Post #12





Grupa: Zarejestrowani
Postów: 24
Pomógł: 1
Dołączył: 25.03.2006

Ostrzeżenie: (0%)
-----


A nie lepiej/szybciej/wygodniej/zgodnie z intencją właścicieli Google będzie wykorzystać Web services? http://www.google.com/apis/


--------------------
Blog
Go to the top of the page
+Quote Post
wieja
post
Post #13





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 22.04.2006
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


Cytat(chomiczek @ 2006-03-08 13:07:20)
ale po którym przeładowaniu strony blokują mi serwer :/

Nikt niewie "po ilu" googlarka zablokuje, generalnie zasada jest taka ze zablokuje jak sie "wqrzy" ze interface dla userów jest wykorzystywany przez skrypt/robota.
Jesli w skrypcie zasymulujesz naturalną aktywność ludzką to mysle ze mozesz spokojnie dziennie kilkadziesiąt fraz przeszukiwać, a jesli potzreba Ci wiecej to lepiej sie wspomoc jakimiś serwerkami z innymi IP
Co do SEO to tu jest kopalnia wiedzy
forum.optymalizacja.com/
Go to the top of the page
+Quote Post
chomiczek
post
Post #14





Grupa: Zarejestrowani
Postów: 271
Pomógł: 4
Dołączył: 5.01.2005

Ostrzeżenie: (0%)
-----


Temat rozwiązałem już dawno, ale widzę, że ktoś odświeża temat.. Ogólnie zastosowałem CURLa i serwer proxy.. spokojnie dochodzę do ok. 100zapytań na dobę..
Mam jednak pytanie w kwestii googla.. da się wyciągnąc pozycję > 1000??


--------------------
created by chomiczek
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 06:17