2. 爬取http://art.people.com.cn/ 任何一类图片
时间: 2023-08-14 11:05:20 浏览: 46
好的,我可以帮您编写爬虫程序来爬取http://art.people.com.cn/ 网站上的任意一类图片。
首先,我们需要导入 requests 和 BeautifulSoup 库来进行网页请求和页面解析。请确保您已经安装了这两个库。
以下是示例代码(以“书画”类图片为例):
```python
import requests
from bs4 import BeautifulSoup
url = 'http://art.people.com.cn/'
category = 'shuhua' # 书画类
page_num = 1 # 爬取第一页
# 构造请求头部信息
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
# 构造请求参数,包括类别和页码
params = {
'class_id': category,
'page': page_num
}
# 发送请求
res = requests.get(url, headers=headers, params=params)
# 解析页面
soup = BeautifulSoup(res.text, 'html.parser')
# 获取图片链接
img_links = []
for img in soup.find_all('img', class_='lazy'):
img_links.append(img['src'])
# 下载图片
for link in img_links:
img_res = requests.get(link, headers=headers)
with open(link.split('/')[-1], 'wb') as f:
f.write(img_res.content)
print('Done!')
```
在上述代码中,我们首先指定了要爬取的网站URL,然后指定了要爬取的类别和页码。接着,我们构造了请求头部信息和请求参数,并发送请求。然后,我们使用 BeautifulSoup 库解析页面,并获取所有图片链接。最后,我们使用 requests 库下载图片到本地。
注意:在实际爬取过程中,我们需要注意网站的反爬机制,避免过于频繁地发送请求。同时,我们也需要遵守网站的爬虫协议,避免侵犯网站的利益。