进入'https://ssr1.scrape.center/page/8/'每一个链接,下载导演的照片,照片文件名以电影名_导演名命名。
时间: 2023-06-23 21:03:27 浏览: 200
通过访问https服务器链接,下载文件
好的,要完成这个任务,我们需要使用一些库来处理网页和文件。你可以在命令行中使用以下命令来安装它们:
```
pip install requests beautifulsoup4
```
然后,我们可以使用以下 Python 代码来下载导演的照片:
```python
import os
import requests
from bs4 import BeautifulSoup
url = 'https://ssr1.scrape.center/page/8/'
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
for item in soup.select('.el-card__body'):
title = item.select_one('.movie-card-title').text.strip()
director = item.select_one('.movie-card-director').text.strip()
img_url = item.select_one('.movie-card-director ~ img')['src']
filename = f'{title}_{director}.jpg'
filepath = os.path.join('directors', filename)
response = requests.get(img_url, headers=headers)
with open(filepath, 'wb') as f:
f.write(response.content)
print(f'Successfully downloaded {filename}!')
```
这段代码首先发送请求获取网页内容,然后使用 Beautiful Soup 解析 HTML,找到每个电影信息的元素,提取需要的数据并构造文件名。
接下来,我们使用 requests 库下载图片,并将其保存到本地文件中。请注意,我们使用了 with open() 语句来打开文件,这样可以确保文件在使用完毕后自动关闭,避免资源泄露。
最后,我们打印出已经下载的文件名,以便确认下载是否成功。
请注意,这段代码中的 User-Agent 头部是必要的,因为我们需要伪装成浏览器发送请求,否则网站可能会拒绝我们的请求。如果你在实际使用中遇到了问题,可以尝试更改 User-Agent 头部或使用代理。
另外,我们将导演照片保存在了一个名为 `directors` 的文件夹中,如果该文件夹不存在,代码会自动创建它。你也可以根据需要更改文件夹路径。
阅读全文