```python
import requests
from bs4 import BeautifulSoup
import os
# 设置
proxies = {"http": "", "https": ""}
# 设置headers
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Safari/537.36'
}
# 设置请求的URL
url = "https://www.yuanfudao.com/"
# 发送请求
response = requests.get(url, headers=headers,proxies=proxies)
# 使用BeautifulSoup解析返回的HTML
soup = BeautifulSoup(response.text, 'html.parser')
# 找到所有img标签
images = soup.find_all('img')
# 遍历所有img标签
for image in images:
# 获取图片的src属性
src = image.get('src')
# 如果图片的src属性以'/'开头,说明是域名外的图片,需要加上'http://www.yuanfudao.com/'前缀
if src.startswith('/'):
src = 'http://www.yuanfudao.com/' + src
# 获取图片的文件名
filename = src.split('/')[-1]
# 创建保存图片的文件夹,如果不存在则创建
if not os.path.exists('images'):
os.makedirs('images')
# 将图片保存到指定的文件夹中
with open('images/' + filename, 'wb') as f:
f.write(requests.get(src, headers=headers,proxies=proxies).content)
```
以上代码的工作原理是,首先发送一个GET请求到指定的URL,并使用BeautifulSoup解析返回的HTML。
然后,它找到所有img标签,并遍历这些标签。对于每个img标签,它获取图片的src属性,并检查这个属性是否以'/'开头。
如果以'/'开头,说明这是域名外的图片。
然后,它获取图片的文件名,并创建一个保存图片的文件夹(如果不存在的话)。
最后,它将图片保存到指定的文件夹中。