1

リモート HTML ページの一部を抽出し、PHP cURL、HTML DOM パーサー、またはその他の方法を使用して別のページに印刷し、元の書式設定スタイル、画像、タブの機能を維持することは可能ですか? たとえば、http://ru.yahoo.com/から中央の列のコンテンツを抽出する方法 (タブと書式設定を使用し、元のテキストの外観を維持する) は?

私が理解している限り、スクリプトは外部 CSS を処理して、返されたコンテンツが元のコンテンツと同じ外観になるようにする必要があります。可能であれば、どのような方法が最も適切でしょうか?はいの場合、例をいただければ幸いです。いくつかの例を見ましたが、私の場合の解決策は見つかりませんでした。

4

1 に答える 1

2

もし私がすぐにそれをしなければならなかった場合(読んでください:非常に汚い)、私はこれをするだろうと思います:

  1. 標準の PHP を使用して、リモート サーバーから HTML をプルします。
  2. 他のサイトから盗んだHTML を使用し、その下に独自の HTML を追加します。
  3. また、独自の CSS を追加して、表示したくない他のサイトの html を非表示にし、独自の html のスタイルを設定します。

問題ないように見えるまでいじってください。ただし、ドメインポリシーが同じであるため、これにより外部JSファイルのロードが中断されると思います。

良いアプローチは次のとおりです。

  1. 標準の PHP を使用して、リモート サーバーから HTML をプルします。
  2. PHP HTML パーサーで HTML を解析し、すべての外部 CSS および JS ファイルを取り除き、それらのファイルもプルします。
  3. XPath を使用して、必要な部分を抽出します。
  4. 独自の HTML、必要なパーツ、新しくダウンロードした CSS および JS ファイルへの新しいリンクを含む新しい HTML ドキュメントを作成します。また、独自の CSS と JS を追加して、結果のスタイルを設定します。

ご存じのとおり、RSS はこのために発明されたものであり、RSS フィードを提供しない場合、コンテンツを取得して自分のサイトに投稿することを望んでいない可能性が高いです。:P

于 2012-04-15T21:00:11.613 に答える