我想从以下网站下载多张图片: www.bbc.co.uk 我想通过使用PHP cURL来做到这一点,有人可以帮我引导我朝正确的方向发展吗?
一次性下载所有图像会很不错,但是如果有人可以帮我下载,可能只下载一个或一堆很棒!
编辑:显示我尝试的内容是个好主意:
<?php
$image_url = "www.bbc.co.uk";
$ch = curl_init();
$timeout = 0;
curl_setopt ($ch, CURLOPT_URL, $image_url);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
// Getting binary data
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
$image = curl_exec($ch);
curl_close($ch);
// output to browser
header("Content-type: image/jpeg");
print $image;
?>
由于某种原因,它不起作用。值得注意的是,我是PHP和编程的绝对主体。
答案 0 :(得分:2)
您粘贴的上述代码并没有按照您的想法进行操作。
$image = curl_exec($ch);
$image
变量不包含任何图像,它实际上包含该网页的整个HTML作为字符串。
如果您更换
// output to browser
header("Content-type: image/jpeg");
print $image;
使用:
var_dump($image);
你会看到html。
这样的事情:
尝试找到实际的冠军图像源并进行相应的解析
答案 1 :(得分:0)
你只需要整个/ Air / assets / images / champions文件夹吗?
当您使用FireFox和“下载所有内容”等下载插件时,打开冠军图片所在的FTP文件夹(Eambo链接),右键单击,选择插件时,没有比这更容易了。
它将列出所有文件,全部选择或选择您需要的文件并开始下载。
此外,如果您拥有该游戏,您可以查看此路径:
\League of Legends\rads\projects\lol_air_client\releases\<newest-version>\deploy\assets\images\champions
既然您可能会在大学中使用CHECK THIS,我希望您能找到解决方案。