0

私は今朝検索して3時間以上検索し、URLから画像のリストを取得して表示する方法について、10を超えるさまざまな設定を試しましたが、どれも正しく機能しませんでした。情報が表示されないか、500エラーが発生します。誰かが私に例を示したり、これを適切に行う方法についてここで私を助けてくれますか?file_get_contentsは実行可能なオプションではありません。

ディレクトリの例:http ://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/

そのディレクトリにあることがわかっているファイル:001.jpg、002.jpg、003.jpg

出力をファイルへの正確なURLにしたいと思います。

もっと情報が必要な場合は教えてください、私はそれを正しく説明する方法を100%正確に確信していません笑。

編集:

さて、私が実際にやりたいと思うのは、すべての画像タグのURLを確認し、その画像への完全なURLを含むリストを表示することです。

このurl+images + phpのものを扱うのは初めてなので、コメントなしであなたの反対票のハンマーで私を強く叩かないでください笑。

私が試したコード:

<?php
/*
Credits: Bit Repository
URL: http://www.bitrepository.com/
*/

$url = $location;

// Fetch page
$string = FetchPage($url);

// Regex that extracts the images (full tag)
$image_regex_src_url = '/<img[^>]*'.

'src=[\"|\'](.*)[\"|\']/Ui';

preg_match_all($image_regex, $string, $out, PREG_PATTERN_ORDER);

$img_tag_array = $out[0];

echo "<pre>"; print_r($img_tag_array); echo "</pre>";

// Regex for SRC Value
$image_regex_src_url = '/<img[^>]*'.

'src=[\"|\'](.*)[\"|\']/Ui';

preg_match_all($image_regex_src_url, $string, $out, PREG_PATTERN_ORDER);

$images_url_array = $out[1];

echo "<pre>"; print_r($images_url_array); echo "</pre>";

// Fetch Page Function

function FetchPage($path)
{
$file = fopen($path, "r"); 

if (!$file)
{
exit("The was a connection error!");
} 

$data = '';

while (!feof($file))
{
// Extract the data from the file / url

$data .= fgets($file, 1024);
}
return $data;
}
?>

そしてそれは空白のページを返しました

4

1 に答える 1

3

すでに試したコードに大まかに基づいています(ただし、問題がたくさんありました)。これにより、URLの全内容が取得され、属性が$url解析されて出力されます。<img> src

この特定のウェブホストは<base href=""/>タグを使用してページ上のすべてのURLのベース部分をリセットするため$base、ベースタグのコンテンツに設定する必要のある変数を追加しました。

さらに、この特定のWebホストには、かなりスマートなアンチホットリンクが設定されているように見えるため、すべての画像が表示されるとは限りません。

だが!それを回転させて、それがあなたがそれを必要とすることをするかどうか、そしてどんな質問でも私に知らせてください。

<?php

$url = 'http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/';
$base = 'http://www.webtoonlive.com/';

// Pull in the external HTML contents
$contents = file_get_contents( $url );

// Use Regular Expressions to match all <img src="???" />
preg_match_all( '/<img[^>]*src=[\"|\'](.*)[\"|\']/Ui', $contents, $out, PREG_PATTERN_ORDER);

foreach ( $out[1] as $k=>$v ){ // Step through all SRC's

    // Prepend the URL with the $base URL (if needed)
    if ( strpos( $v, 'http://' ) !== true ) $v = $base . $v;

    // Output a link to the URL
    echo '<a href="' . $v . '">' . $v . '</a><br/>';
}

サンプル出力:

http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/000.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/001.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/002.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/003.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/004.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/005.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/006.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/007.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/008.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/009.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/010.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/011.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/012.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/013.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/014.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/015.jpg
http://www.webtoonlive.com/webtoon/fantasy_world_survival/ch02/016.jpg
于 2012-10-04T21:21:48.110 に答える