Найти - Пользователи
Полная версия: Нужна срочная помощь, не могу понять
Начало » Центр помощи » Нужна срочная помощь, не могу понять
1 2 3
dolcorp
Есть скрипт парсинга одного интернет магазина, парсит замечательно но у некоторых товаров(10-20 товаров из 7000) берет не ту цену - точнее берет то что нет вообще в коде страници. После обработки формируется Эксель фаил и в нем не та цена что на сайте. Приложил скрипт sulpak_parser_v2_xlsx
py.user.next
dolcorp
но у некоторых товаров(10-20 товаров из 7000) берет не ту цену
Пример приведи. Страница товара, правильная цена, неправильная цена.
dolcorp
Вот пример: Сейчас парсер sulpak_parser_v2_xlsx настроен на парсинг одной страницы на которой берется не верное число цены. На странице сайта цена в поле class_=“product__item-price” указана 299 990, но почему то в Эксель вставляется 239992. Если что можете запустить sulpak_parser_v2_xlsx и сами все увидите. Ссылка где берется не верная цена https://www.sulpak.kz/g/noutbuki_acer_extensa_15_ex215_52_i382sun_nxeg8er00b
py.user.next
dolcorp
На странице сайта цена в поле class_=“product__item-price” указана 299 990
На странице
https://www.sulpak.kz/g/noutbuki_acer_extensa_15_ex215_52_i382sun_nxeg8er00b
 <div class="product__item-price"><b>от</b>&nbsp;239 992&nbsp;<span>₸</span></div>    

На странице
https://www.sulpak.kz/g/noutbuki_acer_nitro_5_an515_57__i5165sgn_nhqeker004
Вообще нет div'а с классом product__item-price

На странице
https://www.sulpak.kz/g/noutbuki_acer_extensa_15_ex215_52_i382sun_nxeg8er00b
В теге div
<div class="product__item product__item-js tile-container"
есть атрибут
data-price="299990.0"

На странице
https://www.sulpak.kz/g/noutbuki_acer_nitro_5_an515_57__i5165sgn_nhqeker004
В теге div
<div class="product__item product__item-js tile-container"
есть атрибут
data-price="439990.0"

Так что напиши в скрипте другой блок поиска цены. То, что есть сейчас, не подходит просто, потому что ориентируется на нестабильные теги.
dolcorp
да, я хочу взять эту цену <div class=“product__price”>389 990 ₸</div> вроде есть везде
меняю в скрипте
check_price = item.find(“div”, class_=“product__item-price”)
на
check_price = item.find(“div”, class_=“product__price”)
и вылетает ошибка
py.user.next
  
>>> import urllib.request
>>> import bs4
>>> 
>>> def f(url):
...     with urllib.request.urlopen(url) as data:
...         text = data.read().decode('utf-8')
...     doc = bs4.BeautifulSoup(text, 'html.parser')
...     product = doc.find(class_='product__item product__item-js tile-container')
...     out = product['data-price']
...     return out
... 
>>> f('https://www.sulpak.kz/g/noutbuki_acer_extensa_15_ex215_52_i382sun_nxeg8er00b')
'299990.0'
>>> f('https://www.sulpak.kz/g/noutbuki_acer_nitro_5_an515_57__i5165sgn_nhqeker004')
'439990.0'
>>>
dolcorp
Требуется изменить скрипт на платной основе, есть желающие помочь?
xam1816
dolcorp
есть желающие помочь?
давай помогу, говори что нужно
dolcorp
Парсер работает по одному городу Уральск
# Код города CITY_ID = ‘14’
Но почему у некоторых товар берет цену уценки из города Алматы
Нужно чтобы все цены брались только из города Уральск

py.user.next
dolcorp
Нужно чтобы все цены брались только из города Уральск
Пример приведи. Страница товара, цена из Уральска, цена из Алматы.

dolcorp
Требуется изменить скрипт на платной основе
Да подожди! может, ещё бесплатно получится сделать по-быстрому.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB