以下是使用PHP获取https://api.senls.cn/meinv/目录下所有子目录中的jpg图片并下载到本地服务器的实现方法:

<?php

// 目标目录
$base_url = 'https://api.senls.cn/meinv/';

// 获取目标目录下的所有子目录
$sub_dirs = get_subdirs($base_url);

// 循环遍历所有子目录并下载其中的jpg图片
foreach ($sub_dirs as $sub_dir) {
    download_jpg_images($base_url . $sub_dir);
}

/**
 * 获取目标目录下的所有子目录
 * @param string $url 目标目录的url
 * @return array 所有子目录的url
 */
function get_subdirs($url) {
    $html = file_get_contents($url);
    $dom = new DOMDocument();
    @$dom->loadHTML($html);
    $links = $dom->getElementsByTagName('a');
    $sub_dirs = array();
    foreach ($links as $link) {
        $href = $link->getAttribute('href');
        if ($href !== '../' && strpos($href, '.') === false) {
            $sub_dirs[] = $href;
        }
    }
    return $sub_dirs;
}

/**
 * 下载目标目录下的所有jpg图片
 * @param string $url 目标目录的url
 */
function download_jpg_images($url) {
    $html = file_get_contents($url);
    $dom = new DOMDocument();
    @$dom->loadHTML($html);
    $imgs = $dom->getElementsByTagName('img');
    foreach ($imgs as $img) {
        $src = $img->getAttribute('src');
        if (strpos($src, '.jpg') !== false) {
            $filename = basename($src);
            $img_url = $url . $src;
            $img_content = file_get_contents($img_url);
            file_put_contents($filename, $img_content);
        }
    }
}

?>

这个代码会先获取目标目录下的所有子目录,然后循环遍历每个子目录并下载其中的jpg图片。其中,get_subdirs函数会使用file_get_contents函数获取目标目录的HTML内容,然后使用PHP的DOMDocument类解析HTML内容并获取所有的子目录。download_jpg_images函数则会使用类似的方法获取子目录中的所有jpg图片,并使用file_put_contents函数将图片保存到本地服务器。需要注意的是,这个代码中并没有对图片的下载进行任何错误处理,如果下载过程中发生错误可能会导致程序崩溃。如果需要更加健壮的代码,可以在下载图片的过程中添加错误处理机制。

用php写一个功能获取httpsapisenlscnmeinv这个目录下全部的子目录里的jpg图片并下载到本地服务器

原文地址: https://www.cveoy.top/t/topic/b5Zi 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录