document.querySelector("#pdfPlayerFirefox").contentWindow.PDFViewerApplication.pdfDocument.getData().then((d) => {
const dl = document.createElement('a');
dl.href = URL.createObjectURL(new Blob([d], { type: 'application/octet-stream' }));
dl.download = 'pdf.pdf';
document.body.appendChild(dl);
dl.click();
document.body.removeChild(dl);
});

document.querySelector("#pdfPlayerFirefox").contentWindow.PDFViewerApplication.pdfDocument.getData().then((d) => {
const dl = document.createElement('a');
dl.href = URL.createObjectURL(new Blob([d], { type: 'application/octet-stream' }));

// 使用当前页面的标题作为文件名
const fileName = document.title || 'pdf'; // 如果没有标题,则默认为 'pdf'
dl.download = `${fileName}.pdf`; // 设置下载文件名

document.body.appendChild(dl);
dl.click();
document.body.removeChild(dl);
});

from urllib.parse import urlparse

def filter_image_url(image_url):
"""过滤掉图片 URL 中的查询参数,保留基础 URL,并将 https 替换为 http"""
parsed_url = urlparse(image_url)
# 替换 https 为 http
new_scheme = "http" if parsed_url.scheme == "https" else parsed_url.scheme
# 去掉查询参数,保留基础图片地址
return parsed_url._replace(scheme=new_scheme, query="").geturl()

def generate_img_tags(base_url, start, end):
"""根据基础地址生成图片地址并转换为 标签"""
base_url_filtered = filter_image_url(base_url) # 过滤掉查询参数并替换协议
img_tags = []

for i in range(start, end + 1):
# 生成基础图片地址
img_url = f"{base_url_filtered.rsplit('/', 1)[0]}/{i}.jpg"

# 对第一个图片进行特殊处理,使用百度图片下载接口
if i == start:
img_url = f"https://image.baidu.com/search/down?url={img_url}"

img_tags.append(f'DZKB.CC')

return img_tags

# 测试
base_url = "https://r3-ndr.ykt.cbern.com.cn/edu_product/esp/assets/ab6cf4a8-302e-4a3f-8653-62d70922effc.t/zh-CN/1688374863837/transcode/image/1.jpg?v=1688376559264&x-eos-process=image/format,webp" # 需要修改的地址
start = 1 # 图片编号从 1 开始
end = 300 # 到 300

# 生成所有的 标签
img_tags = generate_img_tags(base_url, start, end)

# 输出所有标签到控制台
output = "n".join(img_tags)
print(output)

# 输出确认信息
print("nHTML 图片标签已打印。")

import requests
from urllib.parse import urlparse, urlunparse, urlencode

def filter_image_url(image_url):
"""去掉查询参数,保留基础 URL"""
parsed_url = urlparse(image_url)
return urlunparse((parsed_url.scheme, parsed_url.netloc, parsed_url.path, "", "", ""))

def is_image_valid(url):
"""验证图片是否有效(状态码 200 且 Content-Type 为 image)"""
try:
response = requests.head(url, timeout=5) # 只请求头部信息,提高效率
return response.status_code == 200 and "image" in response.headers.get("Content-Type", "")
except requests.RequestException:
return False

def find_valid_image_range(base_url, start, end, check_start=100):
"""使用二分法查找最后一张有效图片"""
base_url_filtered = filter_image_url(base_url)

# 从 check_start(100)开始检查
if not is_image_valid(f"{base_url_filtered.rsplit('/', 1)[0]}/{check_start}.jpg"):
# 如果 100 不可用,就往前搜索
left, right = start, check_start
while left < right: mid = (left + right) // 2 if is_image_valid(f"{base_url_filtered.rsplit('/', 1)[0]}/{mid}.jpg"): left = mid + 1 else: right = mid last_valid = left - 1 else: # 如果 100 可用,就往后搜索 left, right = check_start, end while left < right: mid = (left + right) // 2 if is_image_valid(f"{base_url_filtered.rsplit('/', 1)[0]}/{mid}.jpg"): left = mid + 1 else: right = mid last_valid = right - 1 return max(start, last_valid) # 不能小于 start def generate_img_tags(base_url, start, end): """生成 标签,排除无效图片"""
base_url_filtered = filter_image_url(base_url)

# 找到最后一张有效图片
last_valid = find_valid_image_range(base_url, start, end)
print(f"✅ 最后有效图片编号: {last_valid}")

img_tags = []
for i in range(start, last_valid + 1):
img_url = f"{base_url_filtered.rsplit('/', 1)[0]}/{i}.jpg"

# 第一个图片使用百度图片下载接口
if i == start:
img_url = f"https://image.baidu.com/search/down?{urlencode({'url': img_url})}"

img_tags.append(
f'DZKB.CC')

return img_tags

# 测试
base_url = "https://r3-ndr.ykt.cbern.com.cn/edu_product/esp/assets/ab6cf4a8-302e-4a3f-8653-62d70922effc.t/zh-CN/1688374863837/transcode/image/1.jpg?v=1688376559264&x-eos-process=image/format,webp"
start, end = 1, 300

# 生成 HTML 代码
img_tags = generate_img_tags(base_url, start, end)
html_output = "n".join(img_tags)

print(html_output)
print("n✅ HTML 图片标签已生成!")

* WordPress 批量删除所有文章的特色图像
*/
global $wpdb;
$attachments = $wpdb->get_results( "
SELECT *
FROM $wpdb->postmeta
WHERE meta_key = '_thumbnail_id'
" );
foreach ( $attachments as $attachment ) {
wp_delete_attachment( $attachment->meta_value, true );
}
$wpdb->query( "
DELETE FROM $wpdb->postmeta
WHERE meta_key = '_thumbnail_id'
" );

声明:本站所有电子教材版权均归原作者或出版社所有,本站仅提供预览服务,不存储任何相关图片或文件,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。