Python爬虫---使用BeautifulSoup下载麦当劳点餐图片

步骤:

  1. 导入需要使用的包

  2. 定位正确的url地址

  3. 发请求

  4. 获取响应

  5. 解析响应的内容

  6. 将获取的xpath语法转换成bs4语法

7.下载图片

python 复制代码
import urllib.request
from bs4 import BeautifulSoup

# url
url = "https://www.mcdonalds.com.cn/index/Food/menu/burger"

# 请求
response = urllib.request.urlopen(url=url)

# 响应
content = response.read().decode("utf-8")
# print(content)

# 解析
soup = BeautifulSoup(content, "lxml")

# img_list = "//div[@class="pic"]/img/@src"    # xpath语法
# name_list = "//div[@class="col-md-3 col-sm-4 col-xs-6"]//span/text()"   # xpath语法

name_list = soup.select("div[class='col-md-3 col-sm-4 col-xs-6'] span")  # BeautifulSoup语法
img_list = soup.select(".pic>img")
# print(type(name_list))
# print(name_list, len(name_list))
# print(img_list)

# for name in name_list:
#     print(name.get_text())  # 每个名字
#     print(name.string)  # 每个名字
#     print(name_list.index(name))  # 每个名字的索引

for img in img_list:
    # print(img["src"])  # 每张图片的地址
    img_src = img["src"]
    # print(img_list.index(img))   # 每个图片的索引
    # name = img_src.split("/")[-1]  # 图片命名
    name = name_list[img_list.index(img)].get_text()  # 图片命名
    urllib.request.urlretrieve(url=img_src, filename="./image/1/" + name + ".jpg")  # 下载图片
    print(f"图片{name}下载了")
相关推荐
用户8356290780513 小时前
Python 操作 PDF 附件:添加、查看与管理指南
后端·python
宇宙之一粟11 小时前
乐企版式文件生成平台
java·后端·python
学测绘的小杨1 天前
CompassFusion:一个从 GNSS 到 GNSS/INS 组合导航的独立工程包
python
zzzzzz3101 天前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐1 天前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
兵慌码乱2 天前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot2 天前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海2 天前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱2 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽2 天前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict