看到一个好的帖子,一个一个保存图片确实太慢了,也不优雅,弄了一个脚本,直接下载帖子里面的内容,并且以帖子的标题为文件夹保存。
- #!/bin/bash
- # 检查参数
- if [ $# -eq 0 ]; then
- echo "Usage: $0 <URL>"
- exit 1
- fi
- URL="$1"
- if [[ ! "$URL" =~ ^https?:// ]]; then
- URL="https://$URL"
- fi
- echo "Fetching content from: $URL"
- # Fetch HTML with curl (add User-Agent to avoid blocks)
- HTML=$(curl -s -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36" "$URL")
- # 提取标题 (h4 class="f16") - 使用sed更可靠
- TITLE=$(echo "$HTML" | sed -n 's/.*<h4 class="f16">\([^<]*\)<\/h4>.*/\1/p' | head -1 | sed 's/^[ \t]*//;s/[ \t]*$//')
- if [ -z "$TITLE" ]; then
- TITLE="No_title_found"
- fi
- echo "Title: $TITLE"
- # Sanitize title for folder name
- SAFE_TITLE=$(echo "$TITLE" | sed 's/[<>:"/\\|?*]/_/g')
- # Create folder
- mkdir -p "$SAFE_TITLE"
- cd "$SAFE_TITLE" || exit 1
- # 提取图片URL (优先ess-data,否则data-link) - 保持顺序,不去重
- # 先提取所有ess-data
- IMAGES=$(echo "$HTML" | grep -o "ess-data='https://23img.com/i/[^']*'" | sed "s/ess-data='//g; s/'$//g")
- # 如果没有ess-data,用data-link: data-link='https://23img.com/l/?i=...
- if [ -z "$IMAGES" ]; then
- IMAGES=$(echo "$HTML" | grep -o "data-link='https://23img\.com/l/?i=[^']*'" | sed "s/data-link='//g; s/'$//g")
- else
- # 否则,补充data-link中没有ess-data的
- EXTRA_IMGS=$(echo "$HTML" | grep -o "data-link='https://23img\.com/l/?i=[^']*'" | sed "s/data-link='//g; s/'$//g")
- IMAGES=$(echo "$IMAGES"; echo "$EXTRA_IMGS")
- fi
- # 提取视频URL: src='https://pomf2.lain.la/f/...
- VIDEOS=$(echo "$HTML" | grep -o "src='https://pomf2\.lain\.la/f/[^']*'" | sed "s/src='//g; s/'$//g")
- # 计数器 for 顺序
- IMG_COUNTER=1
- VID_COUNTER=1
- echo "Found $(echo "$IMAGES" | grep -c .) p_w_picpath and $(echo "$VIDEOS" | grep -c .) videos."
- # 下载图片,按顺序,用时间戳+序号命名
- echo "$IMAGES" | while IFS= read -r IMG_URL; do
- if [ -n "$IMG_URL" ]; then
- TIMESTAMP=$(date +%s)
- FILENAME="img_${TIMESTAMP}_${IMG_COUNTER}.jpeg"
- if [[ "$IMG_URL" == *"l/?i="* ]]; then
- # Follow redirect for /l/?i=
- curl -s -L -A "Mozilla/5.0" -o "$FILENAME" "$IMG_URL"
- else
- curl -s -A "Mozilla/5.0" -o "$FILENAME" "$IMG_URL"
- fi
- echo "Downloaded image: $FILENAME"
- ((IMG_COUNTER++))
- fi
- done
- # 下载视频,按顺序,用时间戳+序号命名
- echo "$VIDEOS" | while IFS= read -r VID_URL; do
- if [ -n "$VID_URL" ]; then
- TIMESTAMP=$(date +%s)
- FILENAME="vid_${TIMESTAMP}_${VID_COUNTER}.MOV"
- curl -s -A "Mozilla/5.0" -o "$FILENAME" "$VID_URL"
- echo "Downloaded video: $FILENAME"
- ((VID_COUNTER++))
- fi
- done
- echo "All downloads completed in folder: $SAFE_TITLE"
直接复制保存成脚本就行 如 1024.sh
以
[校长分享第九十一集]绿帽男为满足自己淫妻欲望,分享老婆骚臀给大家。[39P+7V] 为例执行脚本
sh 1024.sh https://www.cc.ypycl.com/htm_data/2509/7/6956395.html
效果
![]()
![]()
这都不点个赞吗
其他平台需要的话也能写个。
赞(3)