请你用Python编写一个功能强大的网页爬虫,功能至少要有图片爬取等。
时间: 2024-10-16 10:11:09 浏览: 23
编写一个功能强大的网页爬虫需要结合多种库和技术,这里我会展示一个基础的例子,使用Python的BeautifulSoup库和requests库来抓取网站的HTML内容,然后利用PIL库来处理图片。假设我们要抓取一个网站的所有图片链接:
```python
import requests
from bs4 import BeautifulSoup
from PIL import Image
import os
# 定义目标网址
url = "http://example.com" # 替换为你想要爬取的网站
# 发送GET请求获取网页源码
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
# 找到所有的img标签
image_tags = soup.find_all('img')
def download_image(img_tag):
try:
img_url = img_tag['src']
if not img_url.startswith('http'):
img_url = url + img_url # 如果相对路径,加入base_url
response_img = requests.get(img_url)
# 创建保存图片的文件名
filename = os.path.join('images', img_url.split('/')[-1])
with open(filename, 'wb') as f:
f.write(response_img.content)
print(f'Successfully downloaded {filename}')
except Exception as e:
print(f'Error downloading image: {e}')
# 下载图片
for tag in image_tags:
download_image(tag)
阅读全文