ウェブページがアクセス可能な外部のウェブページのディレクトリリストを解析することは可能ですか?それがアクセスしたときのファイルのリストを表示します。 PHPでファイルを動的に解析することは可能ですか? -thank you外部Webページのディレクトリ一覧を解析できますか?
ご迷惑をおかけして申し訳ありません。私は、 http://www.ibiblio.org/pub/(/の索引)と、スクリプトとしてコンテンツを配列やその他のものとして読みやすくする機能を持っています。
ウェブページがアクセス可能な外部のウェブページのディレクトリリストを解析することは可能ですか?それがアクセスしたときのファイルのリストを表示します。 PHPでファイルを動的に解析することは可能ですか? -thank you外部Webページのディレクトリ一覧を解析できますか?
ご迷惑をおかけして申し訳ありません。私は、 http://www.ibiblio.org/pub/(/の索引)と、スクリプトとしてコンテンツを配列やその他のものとして読みやすくする機能を持っています。
あなたはあなたのケースのためにpreg_match
またはDomDocument
を使用することができます。
$contents = file_get_contents("http://www.ibiblio.org/pub/");
preg_match_All("|href=[\"'](.*?)[\"']|", $contents, $hrefs);
var_dump($hrefs);
あなたはworking demoを見てみたい場合。
はい、非常に可能です。私はあなたがディレクトリリストで何を意味するかははっきりしていませんが、ウェブサイトのクローラを調べるべきです。これは本質的にあなたが尋ねてきたことですが、PHPで書かれています。
PHP file_get_contentあなたのためのトリックを行います。
あなたがDOMDocument
を使用することができ、適切なXHTMLドキュメント内のリンクのフルバックをディレクトリ一覧を取得している場合は
はい私はページが/ etcなどのインデックスを持つファイルのリストを返すと確信しています。これはトリックの感謝をしました。これを配列に変換するか、 –
配列への変換----------区切り記号で区切ることができます。区切り記号は "\ n"となります。 –
を(あなたが言及したように、このページのためのあなたのhttpリクエストは、ファイルのリストを返すと仮定)
$doc = new DOMDocument();
$doc->preserveWhitespace = false;
$doc->load('directorylisting.html');
$files = $doc->getElementsByTagName('a');
$files
は今、あなたは内のファイルへのフルパスを取得するためにhref
属性を反復処理して得ることができますDOMElement
秒のリストです、そしてコードこのようなファイルのリストを取り戻すために、次のようリスト。
この方法では、には、という適切な形式のディレクトリリストがサーバーから返されている必要があります。たとえば、stackoverflow.com
でリクエストを行い、ファイルのディレクトリリストを取得することはできません。
これは、あなたは、このようなように、<a
タグを見つけるために、正規表現(例えばpreg_match_all
を。)使用することができます(おそらく、不正なHTMLを)うまくいかない場合:
preg_match_all('@<a href\="([a-zA-Z\.\-\_\/ ]*)">(.*)</a>@', file_get_contents('http://www.ibiblio.org/pub/'), $files);
var_dump($files);
$files
まだマッチしたことになる要素、ちょうどセット配列の。
UPDATE、私はあなたのURL(http://www.ibiblio.org/pub/
)でテストされ、それが(preg_match_all
方法)正常に動作します。
私は彼がApacheディレクトリリスト(オプション+インデックス)を解析したいと思うと思います。 – genesis
私はディレクトリリストを意味します。外部ドメイン上のファイル(画像フォルダと言う)を含むディレクトリです。 –