RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 1541962
Accepted
Pureya
Pureya
Asked:2023-09-22 13:31:28 +0000 UTC2023-09-22 13:31:28 +0000 UTC 2023-09-22 13:31:28 +0000 UTC

如何对调度结果进行排序?

  • 772

您需要先显示商品的最低价格

  import requests
  from bs4 import BeautifulSoup


  for i in range(1, 6):
      print(f"Parsing {i} page")
      url = "https://cvetland.kz/almaty/product-category/catalog/?utm_term=%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%BA%D0%B0%20%D1%86%D0%B2%D0%B5%D1%82%D0%BE%D0%B2%20%D0%BD%D0%B0%20%D0%B4%D0%BE%D0%BC%20%D0%BA%D1%80%D1%83%D0%B3%D0%BB%D0%BE%D1%81%D1%83%D1%82%D0%BE%D1%87%D0%BD%D0%BE&matchtype=b&utm_source=google&utm_medium=cpc&utm_campaign=!Zakaz_zvetov_|_Poisk_|_Almaty&gad=1&gclid=EAIaIQobChMIuuHfz7CvgQMVWQkGAB0OaASIEAAYAiAAEgI1GfD_BwE{i}/"
      response = requests.get(url)
      soup = BeautifulSoup(response.text, 'lxml')

      names = soup.find_all("a", class_ = "question__title-link question__title-link_list")
      prices = soup.find_all("span", class_ = "woocommerce-Price-amount amount")


      for j in range(0, len(names)):
          print(names[j].text)
      for j in range(0, len(prices)):
          print(prices[j].text)
парсер
  • 1 1 个回答
  • 19 Views

1 个回答

  • Voted
  1. Best Answer
    user510170
    2023-09-25T20:42:09Z2023-09-25T20:42:09Z

    我给你留下评论是为了让它更清楚。

    import requests
    from bs4 import BeautifulSoup
    
    
    data = {} # словарь для сбора информации
    
    for i in range(1, 6):
        print(f"Parsing {i} page")
        # внимательнее с URL и с перебором страниц, у вас стоял номер страницы не в том месте
        url = f"https://cvetland.kz/almaty/product-category/catalog/page/{i}/?utm_term=%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%BA%D0%B0%20%D1%86%D0%B2%D0%B5%D1%82%D0%BE%D0%B2%20%D0%BD%D0%B0%20%D0%B4%D0%BE%D0%BC%20%D0%BA%D1%80%D1%83%D0%B3%D0%BB%D0%BE%D1%81%D1%83%D1%82%D0%BE%D1%87%D0%BD%D0%BE&matchtype=b&utm_source=google&utm_medium=cpc&utm_campaign=%21Zakaz_zvetov_%7C_Poisk_%7C_Almaty&gad=1&gclid=EAIaIQobChMIuuHfz7CvgQMVWQkGAB0OaASIEAAYAiAAEgI1GfD_BwE%7Bi%7D%2F"
        response = requests.get(url)
        soup = BeautifulSoup(response.text, 'lxml')
        product_items = soup.find_all("div", "product-item") # собираем все карточки на странице
        for product_item in product_items:
            title = product_item.find("h5", "item-title").text # названия
            price = product_item.find("span", "woocommerce-Price-amount amount")\
                .text.replace("₸", "").replace(" ", "").replace("\xa0", "") # цена, сразу избавимся от лишних символов
            data[title]=price # соберем данные в словарь
    sorted_data = sorted(data.items(), key=lambda x: int(x[1])) # отсортируем данные
    print(dict(sorted_data)) # вывод отсортированного словаря
    

    结论:

    {'Клубника в шоколаде №22': '15500', 'Сирень 2': '17500', 'Lili 5': '17500', 'Букет из 17 розовых роз': '18500', 'Клубника в шоколаде №19': '18500', 'Lili 8': '19900', 'Lili 12': '21500', 'Букет из 21 розовой розы': '21900', 'Букет хризантем №3': '23500', 'Lili 13': '23900', 'Коробка «Сирень»': '25500', 'Клубника в шоколаде №17': '25500', 'Lili 9': '25500', 'Букет из 25 белых роз,': '25900', 'Букет Дуэт гортензий': '25900', 'Lili 2': '26500', 'Lili 1': '26500', 'Lili 10': '27500', 'Lili 7': '27500', 'Lili 4': '27900', 'Букет из 5 ароматных пион': '28500', 'Букет хризантем №1': '29500', 'Сирень 1': '32500', 'Букет хризантем №2': '32500', 'Lili 6': '32500', 'Lili 3': '33500', 'Букет из хризантем и роз «Леди»': '35000', 'Букет «Бамбастик» 5': '35000', 'Букет хризантем №5': '35500', '31 красная роза и мерси': '35900', 'Букет хризантем №4': '35900', 'Букет хризантем №6': '37500', 'Букет «Бамбастик» 17': '40000', 'Сирень 4': '45000', 'Сирень 3': '45000', 'Букет «Бамбастик» 14': '45000', 'Букет «Бамбастик» 12': '45000', 'Букет «Бамбастик» 6': '45000', 'Букет «Бамбастик» 21': '50000', 'Корзина из 51 красной розы (Голландия)': '52900', 'Lili 11': '53500', 'Букет «Бамбастик» 19': '55000', 'Букет «Бамбастик» 4': '55000', 'Букет «Бамбастик» 18': '65000', 'Букет «Бамбастик» 11': '65000', 'Букет «Бамбастик» 20': '70000', 'Букет «Бамбастик» 16': '70000', 'Букет из 101 красной розы': '79000', '101 роза нежный': '79000', 'Букет Пушистик 5': '87500', 'Букет «Бамбастик» 15': '90000', 'Букет Пушистик 2': '91900', 'Букет Пушистик 3': '95000', 'Букет Пушистик 1': '95000', 'Букет «Бамбастик» 10': '105000', 'Букет «Бамбастик» 8': '125000', 'Букет Пушистик 4': '145000', 'Букет «Бамбастик» 9': '155000', 'Букет «Бамбастик» 13': '160000', 'Букет «Бамбастик» 7': '160000'}
    
    • 0

相关问题

  • 类型方法调用期间不赋值

  • 如何使用 html 包使用 Dart 语言解析来自 html 的链接?

  • 解析 Yandex.market

  • 通过硒禁止

  • 如何从产品特性表中解析重量值?

  • 如何让网站“记住”自己,Rselenium

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5