0

重複の可能性:
ウェブページ全体を保存

PCに保存するのと同じように、PHPを使用して外部リンクのページソースを保存する必要があります。
ps :saved フォルダーには画像と html コンテンツがあります。

以下のコードを試しました...ソースを tes.html に入れるだけです。すべての画像も保存する必要があるため、オフラインの場合にアクセスします。

<?php
include 'curl.php';
$game = load("https://otherdomain.com/");
echo $game;
?>

<?php 
file_put_contents('tes.html', $game);
?>
4

4 に答える 4

1

あなたがしようとしているのは、Web サイトのミラーリングです。

wget車輪を再発明する代わりに、プログラムを使用してそうします。

exec( 'wget -mk -w 20 http://www.example.com/' );

見る:

于 2012-10-23T13:32:57.233 に答える
0

あなたはスクレイパーを書く必要がありますが、見た目からして、あなたはまだそのような努力をするスキルがありません。勉強することを検討してください:

  1. Web スクレイピング(cURL、PHP の StreamContext、HTTP 理論)
  2. URLパス (相対、絶対、解決)
  3. DOMDocumentおよびDOMXPath (HTML の解析と簡単なタグのクエリ用)
  4. 全体的なHTML構造 (IMG、LINK、SCRIPT、および外部コンテンツをロードするその他のタグ)
  5. 全体的なCSS構造 (ページが依存するリソースをロードする CSS の url('...') など)

そうして初めて、サイトを適切にミラーリングできるようになります。しかし、Ajax のようにコンテンツを動的にロードする場合は、うまくいきません。

于 2012-10-23T13:37:09.837 に答える
0

すべての CSS、画像、および JS リンクを解析する (および保存する) 独自のソリューションを作成するか、同様の質問に対するこの回答を確認してください: https://stackoverflow.com/a/1722513/143732

于 2012-10-23T13:32:49.077 に答える
-1

file_get_contents()は http(s) もサポートしています。例:

$game = file_get_contents('https://otherdomain.com');
于 2012-10-23T13:32:44.333 に答える