일단 Curl을 사용하여이 작업을 수행 할 수 있다고 들었지만 내 사이트의 외부 사이트에서 모든 콘텐츠를 표시하고 싶지는 않지만 특정 div의 콘텐츠 만 표시하고 싶습니다. 어떻게 할 수 있습니까?PHP를 사용하여 한 사이트의 콘텐츠를 다른 사이트의 콘텐츠에 표시하는 방법은 무엇입니까?
4
A
답변
0
curl을 사용하여 원하는 URL에서 HTML을 가져온 다음 결과를 구문 분석하여 원하는 div를 "잡아"올릴 수 있습니다.
9
PHP Simple DOM Parser을 사용하면 페이지를 잡고 쉽게 선택할 수 있습니다.
한 쉽게 :
$html = file_get_html('http://www.google.com/');
$ret = $html->find('div[id=foo]');
문서 here.
http://www.freeoh.net/의 헤더를 가져 오려면 다음 코드를 사용하십시오. 다음 스크립트와 동일한 폴더에 simple_html_dom.php와 page.txt라는 파일 (스크립트에 읽기 및 쓰기 권한이 있는지 확인)을 배치해야합니다. (난 당신이 귀하의 질문에 그것을 언급 한 바와 같이 이미, 컬이 활성화되어 있으리라 믿고있어.) I 페이지를 잡아 컬을 사용하고 그것을 어딘가에 저장하는 데 필요한 때문에
<?php
include 'simple_html_dom.php';
$curl = curl_init();
curl_setopt ($curl, CURLOPT_URL, "http://www.freeoh.net/");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_REFERER, "http://www.freeoh.net/");
$result = curl_exec ($curl);
curl_close ($curl);
//write contents of $result to file
$File = "page.txt";
$fh = fopen($File, 'w') or die("can't open file");
fwrite($fh, $result);
fclose($fh);
//turn file into dom object
$page = file_get_html("page.txt");
$header = $page->find("div", 1);
echo $header;
?>
그것은 조금 해키 있도록 PHP 간단한 HTML Dom 파서가 제대로 파싱 할 수는 있지만 작동합니다.
0
관련 문제
- 1. PHP를 사용하여 한 사이트의 콘텐츠를 다른 사이트에 표시하는 방법은 무엇입니까?
- 2. 위젯에 사이트의 콘텐츠를 표시합니다.
- 3. asp.net에서 javascript로 다른 웹 사이트의 콘텐츠를 가져 오는 방법은 무엇입니까?
- 4. 한 사이트의 정보를 다른 사이트에 통합하는 방법은 무엇입니까?
- 5. IE와 FF는 다른 사이트의 한 사이트의 fav 아이콘을 표시합니까?
- 6. php를 사용하여 다른 도메인의 이미지 크기를 조정하고 표시하는 방법은 무엇입니까?
- 7. 다른 리뷰 사이트의 리뷰를 작성해주십시오.
- 8. WordPress : 도메인을 동일한 사이트의 대체 콘텐츠에 매핑하십시오.
- 9. 내 사이트의 콘텐츠를 처리하는 자동화 된 에이전트를 찾는 방법은 무엇입니까?
- 10. 내 사이트의 페이스 북 앱에 다른 사이트의 후크 만들기
- 11. 한 사이트의 다른 사이트로 이동하는 방법
- 12. Django-cms : 프런트 엔드 편집기가 관리 사이트의 콘텐츠에 동기화되지 않았습니다.
- 13. 웹 응용 프로그램을 사이트의 루트에 표시하는 방법은 무엇입니까?
- 14. PHP를 사용하여 웹 사이트의 내부 하이퍼 링크를 추적하는 방법?
- 15. 는 다른 사이트의
- 16. SEO 콘텐츠에 좋은 콘텐츠를 게시 한 후
- 17. asp.net - 사용자가 웹 사이트의 콘텐츠를 관리하게합니다.
- 18. 자바 스크립트 변수에 따라 사이트의 특정 부분을 표시하는 방법은 무엇입니까?
- 19. 사용자의 GMT 로캘로 웹 사이트의 모든 datetime을 표시하는 방법은 무엇입니까?
- 20. PHP에서 웹 사이트의 헤더 정보를 표시하는 방법은 무엇입니까?
- 21. 웹 사이트의 이메일 주소로 전송되는 모든 것을 표시하는 방법은 무엇입니까?
- 22. 다른 사이트의 HTML 콘텐츠를 포함시키는 방법은 무엇입니까? 두 사이트 모두에 액세스 할 수 있습니다.
- 23. 원격 사이트의 콘텐츠를 가져 오는 피드 모듈 PHP
- 24. 웹 사이트의 콘텐츠를 웹 사이트의 페이스 북 페이지에 직접 게시 할 수 있습니까?
- 25. 이미 만들어진 사이트의 CMS
- 26. 북마크릿을 사용하여 사이트의 페이지에 양식을 표시하는 방법 (Google 리더에서 노트처럼)?
- 27. 클라이언트가 웹 사이트의 사진과 콘텐츠를 변경하는 기능을 추가했습니다.
- 28. 내 사이트의 사용자 콘텐츠를 암호화하여 콘텐츠에 액세스 할 수 없도록하려면 어떻게해야합니까?
- 29. 프로그래밍 방식으로 다른 웹 사이트의 이미지를 저장하는 방법은 무엇입니까?
- 30. 웹 사이트의 막대 그래프
이는 예를 들어이 실행 페이지를 나누기 : find ('div [id = header]'); ?> –
James
내 대답을 편집했습니다. 사이트에서 헤더를 가져 오려면 코드가 작동하고 있어야합니다. –
정규식을 사용하지 않는 경우 +1. – SLaks