Python爬取百度贴吧图片
时间: 2024-09-20 07:11:11 浏览: 76
在Python中,使用第三方库如`requests`、`BeautifulSoup`和`PIL`(或者`io`模块用于处理二进制数据)可以爬取百度贴吧的图片。以下是一个简单的步骤概述:
1. **导入必要的库**:
```python
import requests
from bs4 import BeautifulSoup
import io
```
2. **发送请求获取网页内容**:
```python
url = "http://tieba.baidu.com/p/XXXXX" # 把XXXXX替换为你要抓取的帖子链接
headers = {'User-Agent': 'Mozilla/5.0'} # 设置合适的User-Agent以避免被识别为机器人
response = requests.get(url, headers=headers)
```
3. **解析HTML提取图片信息**:
```python
soup = BeautifulSoup(response.text, 'html.parser')
img_tags = soup.find_all('img') # 找到所有的图片标签
```
4. **下载并保存图片**:
```python
for img in img_tags:
img_url = img['src'] # 提取图片URL
if img_url.startswith('//'):
img_url = 'http:' + img_url # 添加'http://'如果缺少
try:
response_img = requests.get(img_url, stream=True)
with open(f"{url.split('/')[-1].split('.')[0]}_{i}.jpg", 'wb') as f: # 保存图片文件
f.write(response_img.content)
except Exception as e:
print(f"Error downloading image: {e}")
```
注意:
- 这个过程可能会因为网站结构变化或反爬机制而失效,需要定期更新代码适应变化。
- 爬虫操作需遵守网站的robots.txt协议,并尊重版权。
阅读全文