下载某个网页的所有文件,将其中的jpg和png文件拷贝到新的文件夹(文件夹名自己定义),最后输出新文件夹中所有的文件名
时间: 2024-04-19 19:25:55 浏览: 132
下面是一个示例代码,可以下载某个网页的所有文件,并将其中的 JPG 和 PNG 文件拷贝到一个新的文件夹中,然后输出新文件夹中所有文件的名称:
```python
import os
import requests
from bs4 import BeautifulSoup
import shutil
# 定义要下载的网页 URL
url = "https://example.com"
# 定义存储文件的文件夹路径
folder_path = "new_folder"
# 创建文件夹
os.makedirs(folder_path, exist_ok=True)
# 发送请求获取网页内容
response = requests.get(url)
html = response.text
# 使用 BeautifulSoup 解析网页内容
soup = BeautifulSoup(html, "html.parser")
# 查找所有的图片链接
image_tags = soup.find_all("img")
# 遍历图片链接
for image_tag in image_tags:
image_url = image_tag["src"]
# 下载图片并保存到新的文件夹中
if image_url.endswith(".jpg") or image_url.endswith(".png"):
response = requests.get(image_url, stream=True)
image_path = os.path.join(folder_path, os.path.basename(image_url))
with open(image_path, "wb") as file:
shutil.copyfileobj(response.raw, file)
# 输出新文件夹中所有文件的名称
files = os.listdir(folder_path)
print(files)
```
请注意,以上代码使用了 `requests` 库来发送 HTTP 请求,以获取网页内容,并使用了 `BeautifulSoup` 库来解析网页内容。同时,使用了 `shutil` 库中的 `copyfileobj` 函数来复制文件。在运行之前,请确保已安装这些库,可以使用 `pip install` 命令进行安装。
阅读全文