前言
今天逛网站发现一个手机壁纸网站,然后就有产生了给网站壁纸都扒下来存本地的冲动(莫名其妙的收集癖),但是自己也不会爬虫什么的,就产生了这么一个思路:先通过查看网站源代码,把代码都复制出来,然后在通过工具,把源代码里面的链接都提取出来,再让ChatGPT写了个PHP代码,通过这串代码,把图片链接都下载下来存到本地了。方法是个笨方法,大佬有更好的方法的话欢迎指教。
操作步骤
- 以我扒的那个网站为例:https://bizihu.com/,他这个网站禁止右键,那么可以通过在他的链接前面加上
view-source:
然后访问就可以看到源码了,或者也可以先在其他网站右键,然后查看网站源代码,然后再把链接替换一下即可 - 获得网站源代码以后,在网上搜一个链接提取工具,我用的是彩虹工具箱,里面有一键提取文本内所有链接的功能,还可以去重,通过这一步把源代码里面的链接都提取出来
- 然后创建
index.php
和img.txt
两个文件,把提取出来的链接保存到img.txt
,把下方代码复制粘贴到index.php
里面并保存,并且在同一目录下创建images
文件夹,然后浏览器访问index.php即可自动把img.txt里面的图片下载到images
文件夹里面,img.txt我放到资源下载里面了,感兴趣的可以下载下来尝试练练手,总共九千多个图片链接(同时也可以作为昨天发的随机图片的API的img.txt里面的内容)
<?php
// 取消脚本运行时间限制
set_time_limit(0);
// 获取链接中的文件内容
$fileContent = file_get_contents('img.txt的绝对路径,例如https://example.com/img.txt');
// 将每行内容拆分成单独的链接
$imageUrls = explode("\n", $fileContent);
// 保存文件的目标文件夹
$targetFolder = 'images/';
// 记录已下载的图片数量
$downloadedCount = 0;
// 循环处理每个链接
foreach ($imageUrls as $imageUrl) {
// 去除链接前后的空格
$imageUrl = trim($imageUrl);
// 判断链接是否为空
if (!empty($imageUrl)) {
// 生成保存的文件名
$fileName = basename($imageUrl);
// 拼接保存的文件路径
$savePath = $targetFolder . $fileName;
// 保存文件到本地
if (file_put_contents($savePath, file_get_contents($imageUrl))) {
echo "图片保存成功:{$savePath}<br>";
// 已下载的图片数量+1
$downloadedCount++;
} else {
echo "图片保存失败:{$savePath}<br>";
}
}
}
// 输出已下载的图片数量
echo "已下载的图片数量:{$downloadedCount}";
?>
如果对你有用的话就支持一下叭·Thanks♪(・ω・)ノ

© 版权声明
THE END
- 最新
- 最热
只看作者