Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Pobranie informacji z html
matkuz
post 20.10.2015, 17:46:09
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 26.09.2013

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


Witam,

mam problem z podstawami :
  1. <tr>
  2. <td>Nazwa1</td>
  3. <td> &nbsp; </td>
  4. <td>150 zł</td>
  5. <td>/ godz</td>
  6. </tr>
  7. <tr>
  8. <td>Nazwa2</td>
  9. <td> &nbsp; </td>
  10. <td>150 zł</td>
  11. <td>/ godz</td>
  12. </tr>
  13. </table>


I teraz chce pobrać Cenę czyli trzeci TD smile.gif Próbowałem to zrobić preg_match, najpierw get_file_content(do html) a potem preg_match ale tam mi znajduje wystąpienia danego wyrazu a mi chodzi o to co się znajduje za tym smile.gif

Przydałoby się znaleźć po nazwie ten ,,tr", a potem pobrać cenę smile.gif Ktoś ma pomysł jak szybko to zrobić?





Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
Fred1485
post 20.10.2015, 17:49:43
Post #2





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


Nie mógłbyś po stronie klienta zrobić?


--------------------
  1. echo 'I was trying';
  2. die ();
Go to the top of the page
+Quote Post
patwoj98
post 20.10.2015, 17:54:51
Post #3





Grupa: Zarejestrowani
Postów: 218
Pomógł: 16
Dołączył: 6.06.2014
Skąd: Warszawa

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


Pobieraj tabelkę i explode. Kiedyś temat podobny był poruszany. Tak wiem, że można to zrobić lepiej, ale mój sposób niegdyś działał i dalej uważam, że jak coś działa w programowaniu to jest dobrze. Nie jest to najszybszy sposób (trochę trwa pobieranie za każdym razem i rozbijanie). Może u Ciebie będzie szybko.
Pobierasz stronę, wrzucasz w explode, pobierasz tylko zawartość jaka Cię interesuje.
Go to the top of the page
+Quote Post
matkuz
post 20.10.2015, 17:55:49
Post #4





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 26.09.2013

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


właśnie, że nie i musi być w takiej formie smile.gif Także pytanie pozostaje: jak pobrać tą wartość? Na pewno jakoś się da.
Go to the top of the page
+Quote Post
patwoj98
post 20.10.2015, 19:35:05
Post #5





Grupa: Zarejestrowani
Postów: 218
Pomógł: 16
Dołączył: 6.06.2014
Skąd: Warszawa

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


file_get_contents
Go to the top of the page
+Quote Post
matkuz
post 20.10.2015, 21:16:46
Post #6





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 26.09.2013

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


a nie da się tego zrobić po mojemu ? Musi się dać jakoś wyrażeniem regularnym znaleść to tr i z niego wyciągnąć td tongue.gif

explode nie bardzo widzę, zresztą co ma w nim być '<tr>' ? i potem == przyrównywać? trochę bez sensu ;p
Go to the top of the page
+Quote Post
Pyton_000
post 20.10.2015, 21:25:22
Post #7





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


preg_match_all('/<td>\s*([\d,.]+)\s*zł<\/td>/, $string, $match);

Ten post edytował Pyton_000 20.10.2015, 21:25:50
Go to the top of the page
+Quote Post
matkuz
post 20.10.2015, 21:56:41
Post #8





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 26.09.2013

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


Pyton_000 - dzięki - to właśnie sobie zrobiłem - pobrać same ceny umiem tylko chodzi mi o pobranie ,,tej jednej" ceny , szukam więc najpierw tej ,,Nazwa":

preg_match_all('/<tr>^.*(Nazwa1)+<\/tr>/',$file,$match2);

ale coś nie działa, chce pobrać ten tr gdzie jest Nazwa1, a potem pobiorę cenę tak jak to zrobił Pyton_000 smile.gif

Go to the top of the page
+Quote Post
viking
post 21.10.2015, 07:14:33
Post #9





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


https://code.google.com/p/phpquery/
http://php.net/manual/en/simplexml.examples-basic.php
I kilka innych sposobów.


--------------------
Go to the top of the page
+Quote Post
matkuz
post 23.10.2015, 10:01:09
Post #10





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 26.09.2013

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


dzięki za linki ale bardziej mi chodziło o poprawienie mojego wyrażenia regularnego wink.gif
Go to the top of the page
+Quote Post
Pyton_000
post 23.10.2015, 10:21:07
Post #11





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


<tr>([^\/]*Nazwa1.*?)<\/tr>
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 Wersja Lo-Fi Aktualny czas: 24.07.2025 - 20:35