使用Nokogiri库的Python程序

使用Nokogiri库的Python程序_第1张图片

```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属性,并检查这个属性是否以'/'开头。
如果以'/'开头,说明这是域名外的图片。
然后,它获取图片的文件名,并创建一个保存图片的文件夹(如果不存在的话)。
最后,它将图片保存到指定的文件夹中。

你可能感兴趣的:(python,开发语言)