Парсинг данных с сайта
AndyH
Дата: Вторник, 15.08.2017, 10:29 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Проще говоря, нужно парсить цены с Алиэкспресса в Google Sheets есть начальная формула =IMPORTXML(C2;"//span") и есть xPath <span id="j-total-price-value" class="total-price-show" style="user-select: text;">176 515,20 руб.</span> С2 - ячейка с сайтом. В итоге выходит около 30 строчек текста с сайтом, в том числе и цена. Как прописать так что бы выходила только цена?
Проще говоря, нужно парсить цены с Алиэкспресса в Google Sheets есть начальная формула =IMPORTXML(C2;"//span") и есть xPath <span id="j-total-price-value" class="total-price-show" style="user-select: text;">176 515,20 руб.</span> С2 - ячейка с сайтом. В итоге выходит около 30 строчек текста с сайтом, в том числе и цена. Как прописать так что бы выходила только цена? AndyH
Ответить
Сообщение Проще говоря, нужно парсить цены с Алиэкспресса в Google Sheets есть начальная формула =IMPORTXML(C2;"//span") и есть xPath <span id="j-total-price-value" class="total-price-show" style="user-select: text;">176 515,20 руб.</span> С2 - ячейка с сайтом. В итоге выходит около 30 строчек текста с сайтом, в том числе и цена. Как прописать так что бы выходила только цена? Автор - AndyH Дата добавления - 15.08.2017 в 10:29
doober
Дата: Вторник, 15.08.2017, 11:51 |
Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 970
Репутация:
332
±
Замечаний:
0% ±
Excel 2010
Цену товара так можно получить =IMPORTXML(C2;"//span [@id='j-sku-price']") Общую не получите, она формируется в динамике.
Цену товара так можно получить =IMPORTXML(C2;"//span [@id='j-sku-price']") Общую не получите, она формируется в динамике. doober
Сообщение отредактировал doober - Вторник, 15.08.2017, 11:52
Ответить
Сообщение Цену товара так можно получить =IMPORTXML(C2;"//span [@id='j-sku-price']") Общую не получите, она формируется в динамике. Автор - doober Дата добавления - 15.08.2017 в 11:51
AndyH
Дата: Вторник, 15.08.2017, 12:17 |
Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
А количество доступных =IMPORTXML(C2;"//span [@id='j-sell-stock-num']") - выдаёт ошибку(( В ней то что не правильно? <em data-role="stock-num" id="j-sell-stock-num" style="user-select: text;">25 шт.</em>
А количество доступных =IMPORTXML(C2;"//span [@id='j-sell-stock-num']") - выдаёт ошибку(( В ней то что не правильно? <em data-role="stock-num" id="j-sell-stock-num" style="user-select: text;">25 шт.</em> AndyH
Сообщение отредактировал AndyH - Вторник, 15.08.2017, 12:53
Ответить
Сообщение А количество доступных =IMPORTXML(C2;"//span [@id='j-sell-stock-num']") - выдаёт ошибку(( В ней то что не правильно? <em data-role="stock-num" id="j-sell-stock-num" style="user-select: text;">25 шт.</em> Автор - AndyH Дата добавления - 15.08.2017 в 12:17
doober
Дата: Вторник, 15.08.2017, 13:16 |
Сообщение № 4
Группа: Друзья
Ранг: Ветеран
Сообщений: 970
Репутация:
332
±
Замечаний:
0% ±
Excel 2010
В ней то что не правильно?
IMPORTXML(C2;"//em [@id='j-sell-stock-num']")
В ней то что не правильно?
IMPORTXML(C2;"//em [@id='j-sell-stock-num']")doober
Ответить
Сообщение В ней то что не правильно?
IMPORTXML(C2;"//em [@id='j-sell-stock-num']")Автор - doober Дата добавления - 15.08.2017 в 13:16
AndyH
Дата: Вторник, 15.08.2017, 13:26 |
Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
IMPORTXML(C2;"//em [@id='j-sell-stock-num']")
Так пробовал. Ошибку не выдаёт, но и значение не пишет. Пустая ячейка.
IMPORTXML(C2;"//em [@id='j-sell-stock-num']")
Так пробовал. Ошибку не выдаёт, но и значение не пишет. Пустая ячейка.AndyH
Ответить
Сообщение IMPORTXML(C2;"//em [@id='j-sell-stock-num']")
Так пробовал. Ошибку не выдаёт, но и значение не пишет. Пустая ячейка.Автор - AndyH Дата добавления - 15.08.2017 в 13:26
doober
Дата: Вторник, 15.08.2017, 14:03 |
Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 970
Репутация:
332
±
Замечаний:
0% ±
Excel 2010
Если Вы забьете =IMPORTXML(C2;"//div") , то увидите, что количества не видно. Вывод: Надо писать скрипт на парсинг сайта
Если Вы забьете =IMPORTXML(C2;"//div") , то увидите, что количества не видно. Вывод: Надо писать скрипт на парсинг сайта doober
Сообщение отредактировал doober - Вторник, 15.08.2017, 14:05
Ответить
Сообщение Если Вы забьете =IMPORTXML(C2;"//div") , то увидите, что количества не видно. Вывод: Надо писать скрипт на парсинг сайта Автор - doober Дата добавления - 15.08.2017 в 14:03
Faraway
Дата: Понедельник, 29.11.2021, 22:49 |
Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 72
Репутация:
0
±
Замечаний:
20% ±
Excel 2016
Здравствуйте. Чтоб не плодить похожих тем, спрошу уже в созданной. Страница https://apps.apple.com/ru/app/nodle-cash/id1480763553 С нее хочу отдельно взять средний бал и количество оценок, для этого внес такую форулу:Код
=IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]")
Результат выдачи: 4,8 • Оценок: 8 Можно ли подкорректировать формулу, чтоб получить отдельно средний бал и отдельно количество оценок? Спасибо.
Здравствуйте. Чтоб не плодить похожих тем, спрошу уже в созданной. Страница https://apps.apple.com/ru/app/nodle-cash/id1480763553 С нее хочу отдельно взять средний бал и количество оценок, для этого внес такую форулу:Код
=IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]")
Результат выдачи: 4,8 • Оценок: 8 Можно ли подкорректировать формулу, чтоб получить отдельно средний бал и отдельно количество оценок? Спасибо. Faraway
Ответить
Сообщение Здравствуйте. Чтоб не плодить похожих тем, спрошу уже в созданной. Страница https://apps.apple.com/ru/app/nodle-cash/id1480763553 С нее хочу отдельно взять средний бал и количество оценок, для этого внес такую форулу:Код
=IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]")
Результат выдачи: 4,8 • Оценок: 8 Можно ли подкорректировать формулу, чтоб получить отдельно средний бал и отдельно количество оценок? Спасибо. Автор - Faraway Дата добавления - 29.11.2021 в 22:49
Gustav
Дата: Вторник, 30.11.2021, 00:35 |
Сообщение № 8
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация:
1161
±
Замечаний:
±
начинал с Excel 4.0, видел 2.1
Можно ли подкорректировать формулу, чтоб получить отдельно средний бал и отдельно количество оценок?
Т.е. числа 4,8 и 8 положить в две отдельные соседние ячейки? Если да, то как-то так: [vba]Код
=SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ")
[/vba] Т.е. вашу формулу оборачиваем в функцию SPLIT с разделителем - все символы между числами, т.е. " • Оценок: "
Можно ли подкорректировать формулу, чтоб получить отдельно средний бал и отдельно количество оценок?
Т.е. числа 4,8 и 8 положить в две отдельные соседние ячейки? Если да, то как-то так: [vba]Код
=SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ")
[/vba] Т.е. вашу формулу оборачиваем в функцию SPLIT с разделителем - все символы между числами, т.е. " • Оценок: "Gustav
МОИ: Ник , Tip box: 41001663842605
Сообщение отредактировал Gustav - Вторник, 30.11.2021, 00:37
Ответить
Сообщение Можно ли подкорректировать формулу, чтоб получить отдельно средний бал и отдельно количество оценок?
Т.е. числа 4,8 и 8 положить в две отдельные соседние ячейки? Если да, то как-то так: [vba]Код
=SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ")
[/vba] Т.е. вашу формулу оборачиваем в функцию SPLIT с разделителем - все символы между числами, т.е. " • Оценок: "Автор - Gustav Дата добавления - 30.11.2021 в 00:35
Faraway
Дата: Вторник, 30.11.2021, 11:20 |
Сообщение № 9
Группа: Пользователи
Ранг: Участник
Сообщений: 72
Репутация:
0
±
Замечаний:
20% ±
Excel 2016
Т.е. числа 4,8 и 8 положить в две отдельные соседние ячейки?
Не совсем это имел введу, отдельно хотел получить результат оценки и отдельно для количества оценок, т.е. 2 формулы в отдельных ячейках. Но ваш вариант тоже хорошо подходит, даже лучше, так как запросов будет меньше и прогрузка быстрее. Все равно результат я хотел получить в соседних ячейках ) Еще столкнулся с проблемой, некоторые значения оценок идут через запятую, а некоторые через точку. Если через точку, то таблица не воспринимает это как число. Можно еще сюда добавить, что если есть точка - заменить ее на запятую?
Т.е. числа 4,8 и 8 положить в две отдельные соседние ячейки?
Не совсем это имел введу, отдельно хотел получить результат оценки и отдельно для количества оценок, т.е. 2 формулы в отдельных ячейках. Но ваш вариант тоже хорошо подходит, даже лучше, так как запросов будет меньше и прогрузка быстрее. Все равно результат я хотел получить в соседних ячейках ) Еще столкнулся с проблемой, некоторые значения оценок идут через запятую, а некоторые через точку. Если через точку, то таблица не воспринимает это как число. Можно еще сюда добавить, что если есть точка - заменить ее на запятую?Faraway
Сообщение отредактировал Faraway - Вторник, 30.11.2021, 11:40
Ответить
Сообщение Т.е. числа 4,8 и 8 положить в две отдельные соседние ячейки?
Не совсем это имел введу, отдельно хотел получить результат оценки и отдельно для количества оценок, т.е. 2 формулы в отдельных ячейках. Но ваш вариант тоже хорошо подходит, даже лучше, так как запросов будет меньше и прогрузка быстрее. Все равно результат я хотел получить в соседних ячейках ) Еще столкнулся с проблемой, некоторые значения оценок идут через запятую, а некоторые через точку. Если через точку, то таблица не воспринимает это как число. Можно еще сюда добавить, что если есть точка - заменить ее на запятую?Автор - Faraway Дата добавления - 30.11.2021 в 11:20
Gustav
Дата: Вторник, 30.11.2021, 13:02 |
Сообщение № 10
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация:
1161
±
Замечаний:
±
начинал с Excel 4.0, видел 2.1
2 формулы в отдельных ячейках
если есть точка - заменить ее на запятую
Ок, две формулы для двух разных ячеек, отличаются лишь индексом в функции INDEX - 1 или 2: [vba]Код
=--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ");1);".";",") =--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ");2);".";",")
[/vba] И для лучшей наглядности и просматриваемости участвующих функций - повторяю формулы в условном виде, заменив ваши длинные ссылки на псевдоссылки "строка": [vba]Код
=--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("строка1";"строка2");" • Оценок: ");1);".";",") =--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("строка1";"строка2");" • Оценок: ");2);".";",")
[/vba]
2 формулы в отдельных ячейках
если есть точка - заменить ее на запятую
Ок, две формулы для двух разных ячеек, отличаются лишь индексом в функции INDEX - 1 или 2: [vba]Код
=--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ");1);".";",") =--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ");2);".";",")
[/vba] И для лучшей наглядности и просматриваемости участвующих функций - повторяю формулы в условном виде, заменив ваши длинные ссылки на псевдоссылки "строка": [vba]Код
=--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("строка1";"строка2");" • Оценок: ");1);".";",") =--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("строка1";"строка2");" • Оценок: ");2);".";",")
[/vba]Gustav
МОИ: Ник , Tip box: 41001663842605
Ответить
Сообщение 2 формулы в отдельных ячейках
если есть точка - заменить ее на запятую
Ок, две формулы для двух разных ячеек, отличаются лишь индексом в функции INDEX - 1 или 2: [vba]Код
=--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ");1);".";",") =--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("https://apps.apple.com/ru/app/nodle-cash/id1480763553";"//li/figure/figcaption/text()[1]");" • Оценок: ");2);".";",")
[/vba] И для лучшей наглядности и просматриваемости участвующих функций - повторяю формулы в условном виде, заменив ваши длинные ссылки на псевдоссылки "строка": [vba]Код
=--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("строка1";"строка2");" • Оценок: ");1);".";",") =--SUBSTITUTE(INDEX(SPLIT(IMPORTXML("строка1";"строка2");" • Оценок: ");2);".";",")
[/vba]Автор - Gustav Дата добавления - 30.11.2021 в 13:02
Faraway
Дата: Вторник, 30.11.2021, 14:14 |
Сообщение № 11
Группа: Пользователи
Ранг: Участник
Сообщений: 72
Репутация:
0
±
Замечаний:
20% ±
Excel 2016
Gustav, спасибо, все понятно в формуле, кроме момента с "--" после скобок. За что отвечает такое сочетание символов?
Gustav, спасибо, все понятно в формуле, кроме момента с "--" после скобок. За что отвечает такое сочетание символов? Faraway
Ответить
Сообщение Gustav, спасибо, все понятно в формуле, кроме момента с "--" после скобок. За что отвечает такое сочетание символов? Автор - Faraway Дата добавления - 30.11.2021 в 14:14
Gustav
Дата: Вторник, 30.11.2021, 14:19 |
Сообщение № 12
Группа: Админы
Ранг: Участник клуба
Сообщений: 2797
Репутация:
1161
±
Замечаний:
±
начинал с Excel 4.0, видел 2.1
МОИ: Ник , Tip box: 41001663842605
Сообщение отредактировал Gustav - Вторник, 30.11.2021, 14:24
Ответить
tolkant
Дата: Суббота, 25.02.2023, 16:27 |
Сообщение № 13
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация:
0
±
Замечаний:
0% ±
Кто может помочь спарсить огромное количество данных с сайтов. Там около 20 млн страниц о компаниях необходимо спарсить в эксель, а потом выгрузить на сайт.
Кто может помочь спарсить огромное количество данных с сайтов. Там около 20 млн страниц о компаниях необходимо спарсить в эксель, а потом выгрузить на сайт. tolkant
Ответить
Сообщение Кто может помочь спарсить огромное количество данных с сайтов. Там около 20 млн страниц о компаниях необходимо спарсить в эксель, а потом выгрузить на сайт. Автор - tolkant Дата добавления - 25.02.2023 в 16:27