代码拉取完成,页面将自动刷新
同步操作将从 SHTLLS/Python练习 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
# 任务详情
# 根据任务详情下方提供的网页(数量为1),完成商品搜索结果分析。
# 请将右侧的函数 itemSearch() 补充完整,使其能完成以下功能:
# 对于网页中出现的任一网店名称 ,函数返回以下信息,请将以上获取的信息保存在数组中,按顺序返回。
# 任务要求
# 该网店对应商品,是否参与满减促销(非满件促销),返回值为True或False
# 该网店对应商品的价格,是否存在会员价,如果存在,则返回会员价,返回类型为float(保留1位小数),如果不存在,返回原始价格
# 该网店对应商品的评论数,返回类型为int
# 如果该网店存在两个及以上商品,返回价格较高的商品信息;如果商品价格相同,返回搜索结果最靠前的商品信息
# 链接地址在下方专题地址中给出,点击链接可以直接获取
# 测试用例
# 输入:"花花公子官方旗舰店" 输出:[False, 139.0, 4400]
# 解释:该网店价格最高的商品未参加满减促销活动,对应价格为139.0,商品评论数为4400
# 输入:"陌芙丝欧旗舰店" 输出:[True, 139.0, 12000]
# 解释:该网店价格最高的商品参加满减促销活动,对应价格为139.0,商品评论数为12000
# 输入:"合众服饰专营店" 输出:[True,118.0,10000]
# 解释:该网店价格最高的商品参加满减促销活动,对应价格为118.0,商品评论数为10000
# 链接: http://72.itmc.org.cn:80/JS001/open/show/ecjd.html
# 说明
# 1. 会员价格是商品价格右边小字出现的价格信息
# 2. 评论数为“1万+”就代表评论数为“10000”
# 3. 函数接收“网店名称”这一变量,返回类型为数组
# 4. 不得修改函数的名称
# 5.“满减促销”和“满件促销”是不一样的概念
# 6. 网页中存在相同店铺名称的商品,请注意甄别
#
# # 1.运行或提交代码不需要自己编写测试用例,后台自动进行测试检查。
# 2.您编写代码的区域可以不限定在类或者函数体内,保证输入与输出符合任务要求即可。
# 3.点击“运行代码”按钮,可以查看程序设计是否正确,运行次数越多,任务得分越低。
# 4.点击“提交代码”按钮,系统将保存代码,并记录任务数据。
# 5.点击右上方“结束任务”按钮,系统将在后台计算任务得分,任务结束。
# -*- coding: utf-8 -*-
import re
import bs4
import requests
class Solution:
def itemSearch(self, shop_name: str) -> list:
# 从此处开始编写代码
url = 'http://72.itmc.org.cn:80/JS001/open/show/ecjd.html'
res = requests.get(url)
res.encoding = "utf-8"
list1 = [True, 0, 0]
bs = bs4.BeautifulSoup(res.text, "html.parser")
ul = bs.find("ul", "gl-warp clearfix")
li = ul.find_all("li", "gl-item")
for i in li:
name = i.find("span", "J_im_icon").text
if name == shop_name:
manjian = i.find("div", "p-icons").text
if "满" not in manjian:
list1[0] = False
yuanjia = i.find("div", "p-price").text.replace("\n", "")[1:]
jiagelist = yuanjia.split("¥")
if list1[1] < float(jiagelist[0]):
if len(jiagelist) > 1:
list1[1] = float(jiagelist[1])
else:
list1[1] = float(jiagelist[0])
pinglun = i.find("div", "p-commit").text
pinglun = pinglun.split("+")[0]
if "万" in pinglun:
pinglun = float(pinglun.replace("万", "")) * 10000
list1[2] = int(pinglun)
return list1
pass
# 代码编写结束
name1 = "潮龙涧男装专营店"
name2 = "花花公子官方旗舰店"
name3 = "慕仕专营店"
name4 = "罗蒙(ROMON)男装京东自营专卖店"
name5 = "陌芙丝欧旗舰店"
print(Solution.itemSearch(Solution, "潮龙涧服饰专营店"))
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。