Python 爬取二次元壁纸:Wallhaven 网站爬虫教程
首先,我们需要确定爬取的目标网站。这里我们选择一个二次元壁纸网站:'https://wallhaven.cc/'。
接下来,可以使用 Python 中的 requests 库和 BeautifulSoup 库来实现爬取网页和解析网页的功能。
爬取过程如下:
- 导入所需库:
import requests
from bs4 import BeautifulSoup
- 构造请求头和请求参数:
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
params = {
'categories': '100', # 选择二次元分类
'purity': '100', # 选择纯净无水印的壁纸
'sorting': 'favorites', # 按照收藏数排序
'order': 'desc', # 降序排列
'page': '1' # 第一页
}
url = 'https://wallhaven.cc/search'
- 发送请求并获取网页内容:
response = requests.get(url, headers=headers, params=params)
html = response.text
- 解析网页内容:
soup = BeautifulSoup(html, 'html.parser')
wallpapers = soup.find_all('figure', class_='thumb') # 找到所有壁纸元素
for wallpaper in wallpapers:
img_url = wallpaper.find('img').get('data-src') # 获取壁纸的链接
print(img_url)
完整代码如下:
import requests
from bs4 import BeautifulSoup
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
params = {
'categories': '100',
'purity': '100',
'sorting': 'favorites',
'order': 'desc',
'page': '1'
}
url = 'https://wallhaven.cc/search'
response = requests.get(url, headers=headers, params=params)
html = response.text
soup = BeautifulSoup(html, 'html.parser')
wallpapers = soup.find_all('figure', class_='thumb')
for wallpaper in wallpapers:
img_url = wallpaper.find('img').get('data-src')
print(img_url)
注意:在实际应用中,我们需要将上述代码封装为一个函数,并添加异常处理、自动翻页、多线程等功能,以提高爬取效率和稳定性。
原文地址: https://www.cveoy.top/t/topic/nhub 著作权归作者所有。请勿转载和采集!