如何编写python程序,爬取百度图片中猫和狗的图片各一百张,并存储至文件夹中
时间: 2024-06-10 08:05:03 浏览: 15
你可以使用Python中的requests和BeautifulSoup库来爬取百度图片中猫和狗的图片。首先,你需要使用requests.get()方法获取百度图片搜索结果的页面,然后使用BeautifulSoup解析页面,找到每个图片的URL地址,并使用requests.get()方法获取图片的二进制数据。最后,将图片二进制数据存储到文件中即可。下面是一个简单的示例代码:
```python
import requests
from bs4 import BeautifulSoup
# 定义两个列表分别存储猫和狗的图片URL
cat_img_urls = []
dog_img_urls = []
# 爬取猫和狗的图片URL
for keyword in ['猫', '狗']:
# 获取百度图片搜索结果页面
url = f'https://image.baidu.com/search/index?tn=baiduimage&word={keyword}'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
# 解析页面,获取每个图片的URL
img_elements = soup.select('img')
for i, img_element in enumerate(img_elements):
if i == 100:
break
if 'src' in img_element.attrs:
src = img_element.attrs['src']
# 将图片URL添加到对应的列表中
if keyword == '猫':
cat_img_urls.append(src)
else:
dog_img_urls.append(src)
# 将图片保存到文件夹
for i, img_url in enumerate(cat_img_urls + dog_img_urls):
# 获取图片二进制数据
response = requests.get(img_url)
img_data = response.content
# 构造图片保存的文件名,例如 cat_001.jpg
prefix = 'cat' if i < 100 else 'dog'
suffix = str(i + 1).zfill(3)
filename = f'{prefix}_{suffix}.jpg'
# 将图片二进制数据写入文件
with open(filename, 'wb') as f:
f.write(img_data)
```
上面的代码中,我们使用了两个列表分别存储猫和狗的图片URL。首先,我们遍历关键词列表['猫', '狗'],并对每个关键词进行图片搜索。解析页面,找到每个图片的URL地址,并将其添加到对应的列表中。最后,我们遍历所有图片URL,下载图片并保存到本地文件夹中。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)