pywebcopy 是一个 Python 库,旨在帮助用户轻松地将网页及其相关资源(如图片、CSS、JavaScript 等)下载并保存为本地文件,类似于浏览器的 “保存为完整网页” 功能。
安装 pywebcopy
pip install pywebcopy
基本用法
示例1、保存网页及其资源
from pywebcopy import save_webpage
# 指定要保存的网页 URL
url = “https://example.com”
# 指定保存的文件夹
save_dir = “saved_webpages”
# 保存网页及其资源
save_webpage(url, save_dir)
url
:你想要保存的网页的 URL。save_dir
:保存网页和资源的本地文件夹。如果文件夹不存在,pywebcopy
会自动创建它。
示例2、指定保存的文件夹和文件名
from pywebcopy import save_webpage
# 指定要保存的网页 URL
url = “https://example.com”
# 指定保存的文件夹和文件名
save_dir = “saved_webpages”
filename = “example_page”
# 保存网页及其资源
save_webpage(url, save_dir, open_in_browser=True)
open_in_browser=True
:保存网页后,是否自动打开网页(默认是False
)。save_dir
和filename
:指定网页保存的目录和文件名(filename
是网页保存的 HTML 文件名)。
示例3、处理多个网页
from pywebcopy import save_webpage
# 要保存的网页 URL 列表
urls = [
“https://example.com”,
“https://example2.com”
]
# 指定保存的文件夹
save_dir = “saved_webpages”
# 循环保存多个网页
for url in urls:
save_webpage(url, save_dir)
示例4、设置文件夹结构和自定义 URL 解析
from pywebcopy import save_webpage
from pywebcopy import config
# 自定义配置,设置资源文件的保存位置
config.save_folder = “saved_webpages”
config.base_url = “https://example.com”
# 自定义保存网页函数
def save_custom_webpage(url, folder):
save_webpage(url, folder)
# 调用自定义函数
save_custom_webpage(“https://example.com”, “custom_folder”)
参数说明
save_webpage
- url:要保存的网页的 URL。
- download_folder:网页及其资源要保存到的文件夹路径。如果文件夹不存在,
pywebcopy
会自动创建。 - open_in_browser(可选):保存完成后是否自动在浏览器中打开网页。默认为
False
。 - file_name(可选):指定保存的 HTML 文件名。如果没有提供,默认使用 URL 的文件名。
- project_name(可选):为当前保存项目指定一个名称,用于组织保存的资源文件夹。
- timeout(可选):请求网页时的超时时间(单位:秒)。默认为
30
秒。 - verify_ssl(可选):是否验证 SSL 证书。默认为
True
,如果你的网页没有有效的 SSL 证书,可以将其设置为False
。
支持的文件类型:
pywebcopy
会自动下载网页中的所有类型的资源,包括但不限于:
- HTML 文件:网页本身。
- 图片:如
.jpg
、.png
、.gif
等。 - CSS 文件:样式表文件。
- JavaScript 文件:网页中的脚本文件。
- 其他媒体:如音频、视频等。
其他注意事项:
pywebcopy
只会下载网页中直接引用的外部资源。如果网页依赖 JavaScript 动态加载的资源,pywebcopy
并不能自动下载这些资源。- 如果网页有多个资源文件,它会保留资源的文件夹结构,以便正确引用。