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}下载了")
相关推荐
狐狐生风8 分钟前
LangGraph 工具调用集成
python·langchain·prompt·agent·langgraph
MATLAB代码顾问9 分钟前
【智能优化】无穷优化算法(INFO)原理与Python实现
开发语言·python·算法
SilentSamsara20 分钟前
迭代器协议:`__iter__` / `__next__` 的完整执行流程
开发语言·人工智能·python·算法·机器学习
yuanpan21 分钟前
Python + psutil 实战:开发一个简易系统监控工具
linux·运维·python
MATLAB代码顾问42 分钟前
【智能优化】鹈鹕优化算法(POA)原理与Python实现
开发语言·python·算法
研究点啥好呢1 小时前
凯捷 自动化测试(Java+Selenium)面试题精选:10道高频考题+答案解析
java·开发语言·python·selenium·测试工具·求职招聘
SilentSamsara1 小时前
生成器进阶:`yield from`、协程历史与双向通信
开发语言·python·青少年编程·pycharm
张二娃同学1 小时前
专栏第01篇_深度学习导论
人工智能·python·深度学习·cnn
源码之家2 小时前
计算机毕业设计:Python医疗数据分析可视化系统 Flask框架 随机森林 机器学习 疾病数据 智慧医疗 深度学习(建议收藏)✅
python·机器学习·信息可视化·数据分析·flask·课程设计
Data_Journal2 小时前
2026年十大数据集网站
大数据·开发语言·数据库·人工智能·python