从百度爬取图片,代码
时间: 2024-09-25 21:04:10 浏览: 8
从百度爬取图片通常需要使用Python的库如`requests`, `beautifulsoup4`以及处理文件的`os`模块。下面是一个简单的示例,说明如何使用这些工具来下载网页中的图片:
```python
import requests
from bs4 import BeautifulSoup
import os
def download_images(url):
# 发送HTTP请求获取网页内容
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
# 解析HTML内容
soup = BeautifulSoup(response.text, 'html.parser')
# 找到所有的图片标签,比如<img>元素
img_tags = soup.find_all('img')
# 图片URL前缀通常是网站域名,这里假设都是'http://www.baidu.com'
base_url = 'http://www.baidu.com'
# 遍历图片标签,构建完整的图片URL并下载
for img_tag in img_tags:
img_url = base_url + img_tag['src']
# 创建图片保存路径,如果没有就创建
save_path = os.path.join(os.getcwd(), img_url.split('/')[-1])
if not os.path.exists(os.path.dirname(save_path)):
os.makedirs(os.path.dirname(save_path))
# 下载图片
with open(save_path, 'wb') as f:
f.write(requests.get(img_url).content)
# 使用函数
download_images('你要爬取的百度搜索结果页面链接')
```
注意:实际操作时可能会遇到反爬虫策略,例如需要登录、限制频率等。此外,爬取他人网站的内容需遵守版权和robots.txt协议。在进行大规模爬取之前,最好先了解目标网站的规定。