2012-03-15 1 views
1

<으로 숨겨진 PHP (file_get_contents?)로 웹 사이트를 읽고 싶습니다. span style = 'display : none;' >.PHP를 사용하여 원격 웹 페이지에서 숨겨진 컨텐츠를 추출하려면 어떻게해야합니까?

예 4 :

  1. U < 스팬 스타일 = '표시 : 없음;' > wsebv </스팬 > > < <U/U> rfahr
  2. Z < 스팬 스타일 = '표시 : 없음;' > E <I> </I > I < 스팬 > </스팬 > NHV </스팬 > <B> </B >
  3. B öhrdorf <I> </I > < 난 > </I > B < 스팬 > </span >e <i > </i > n < span style = 'display : none;' > einhv </스팬 > > < <U/U> 산
  4. K < 스팬 스타일 = '표시 : 없음;' > s <i> </i > d < span style = 'display : none;' > d < span style = 'display : none;' > b < span style = 'display : none;' > n < span style = 'display : none;' > v <i > </i > b < span style = 'display : none;' > H <I> </I > gawe </스팬 > <U> </U > 아오이 </스팬 > <B> </B > HVWS </스팬 > <B> </B > aoir <은/스팬 > <b > </b >suud </span > <b > </b > asu </span > <b> </b > irchdorf/Kr.

결과는 다음과 같아야합니다

  1. Urfahr
  2. Zöhrdorf
  3. Babenberg
  4. 키르 흐 도르프/Kr을.이 문제를 해결하기위한

두 가지 가능한 방법 (하지만이를 구현하는 방법을 모른다) :
A) 그 내용
B 모든 스팬 태그를 제거), 프로그램에만 표시 내용을 읽을

사전에 많은 도움을 주셔서 감사합니다 !!!

+0

그래서 두 가지 접근 방식은 무엇을 했습니까? 일부 코드보기 –

+0

Uwsebvrfahr - html로 제공됩니까? 브라우저에서 Urfahr처럼 보입니까? 그렇다면 브라우저에서 자바 스크립트를 비활성화하고 페이지를 새로 고침하여 자바 스크립트를 디코딩 할 수 있습니다. 이 자바 스크립트를 찾아 인코딩 알고리즘을 분석해야합니다. – heximal

+0

그래,''태그를 제거하십시오 - 간단한 정규식이 트릭을 할 것입니다. – halfer

답변

0

스타일을 적용해도 아무런 차이가 없습니다. PHP는 단지 텍스트 다.

시도 :

<?php 
$url = 'http://....'; // URL you're scraping. 
$html = file_get_contents($url); 
$text = strip_tags($html); 
echo "<PRE>$text</PRE>"; 
+0

불행히도. 다음 코드로 시도해보십시오. 브라우저 출력에서 ​​"Ergebnisse"의 세 번째 항목을 검색하고 난독 화 된 행을 살펴보십시오. $text"; ?> – tomfly

1

http://sourceforge.net/projects/simplehtmldom/files/latest/download?source=files

include('simple_html_dom.php'); 

$html = file_get_html('http://www.fussballoesterreich.at/netzwerk/datenservice/379402779304830775_O~733830065019629299~744933674800963515~0~1.htm'); 

$i = 1; 
foreach($html->find('.mannschaft a') as $e) 
{ 
    $x = html_entity_decode($e->innertext, ENT_QUOTES, 'UTF-8'); 
    $x = preg_replace('#<(.*)>#', '', $x); 
    echo $i, '. ', $x, '<br />'; 
    $i++; 
} 

결과 :

1. Garsten 
2. S. Valent.ASK 
3. Bumgartenberg 
4. Neuhofen/Krems 
5. Admira 
6. Asten 
7. Enns 
8. Pasching 1b 
9. S. Florian 1b 
10. SValentin SC 
11. Hörsching 
12. S Ulrich 
13. Wdischgarsten 
14. Doppl-Hart 

여기에 내 작품은

을 수행합니다.

+0

내 컵이 끝납니다. – Pateman

+0

도움을 주셔서 감사합니다. 좋은 솔루션이지만 중첩 된 범위를 사용할 때는 작동하지 않습니다! – tomfly

+0

@tomfly, 코드를 업데이트하고 지금 확인하십시오. –