文章概述
本文将详细介绍如何使用Python编写一个简单的爬虫来抓取高清美女图片。我们将利用requests
库来发送HTTP请求,使用BeautifulSoup
库来解析HTML文档,从而提取出图片的URL并将其下载到本地。
技术栈
- Python: 编程语言
- requests: HTTP客户端库
- BeautifulSoup: HTML/XML解析库
环境准备
确保安装了以下Python库:
requests
beautifulsoup4
可通过pip安装:
pip install requests beautifulsoup4
代码详解
1. 导入库
import requests
from bs4 import BeautifulSoup
2. 爬取图片
for i in range(1, 10, 1):
if i == 1:
r = requests.get('https://pic.netbian.com/4kmeinv/index.html')
else:
r = requests.get(f'https://pic.netbian.com/4kmeinv/index_{i}.html')
r.encoding = 'gbk'
html = r.text
soup = BeautifulSoup(html, 'html.parser')
imgs = soup.find_all('img')
for img in imgs:
src = img['src']
if '/uploads/' not in src:
continue
src = f'https://pic.netbian.com{src}'
with open(f'美女图片/{img["alt"]}.jpg', 'wb') as fp:
resp = requests.get(src)
fp.write(resp.content)
代码分析
- 循环遍历页面:从第1页到第10页,每页包含不同的美女图片。
- 发送HTTP请求:使用
requests.get()
方法获取网页内容。 - 编码设置:由于网站使用GBK编码,我们需要手动设置编码格式。
- 解析HTML:使用
BeautifulSoup
解析网页内容,提取所有的<img>
标签。 - 筛选图片URL:只保留那些包含
/uploads/
的图片链接。 - 下载图片:使用
requests.get()
下载图片,并将其保存到本地文件。
注意事项
- 文件夹创建:确保
美女图片
文件夹存在,否则程序会抛出异常。 - 版权问题:请确保遵循相关网站的版权政策,不要用于商业用途。
- 异常处理:可以增加异常处理机制来增强程序的健壮性。
运行程序
确保所需库已安装,并且美女图片
文件夹已创建,然后运行上述脚本即可开始爬取图片。
总结
通过上述代码,我们实现了一个简单的爬虫,它可以抓取高清美女图片并保存到本地。这种方法适用于快速抓取小规模的图片数据集。如果你需要更高级的功能或处理大量数据,可以考虑使用更复杂的技术如异步请求、多线程或多进程等。
完整代码
import requests
from bs4 import BeautifulSoup
for i in range(1,10,1):
if i == 1:
r = requests.get(r'https://pic.netbian.com/4kmeinv/index.html')
else:
r = requests.get(f'https://pic.netbian.com/4kmeinv/index_{i}.html')
r.encoding = 'gbk'
html = r.text
soup = BeautifulSoup(html, 'html.parser')
imgs = soup.find_all('img')
for img in imgs:
src = img['src']
if '/uploads/' not in src:
continue
src = f'https://pic.netbian.com{src}'
with open(f'美女图片/{img["alt"]}.jpg', 'wb') as fp:
resp = requests.get(src)
fp.write(resp.content)