Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Сколько стоит надеть готовую верстку на Wordpress?

Лучший ответ:
Здравствуйте!
Цены действительно разные. Обратитесь на фриланс.
Вот, напрмимер - https://kwork.ru/
Для понимания, мне например, за 3000 рублей сделали дизайн, верстку и интегрировали готовый скрипт на сайт. Думаю, что за 2-3 К вам создадут тему для ВП на основе верстки. А кто-то возможно, что и за 1 К возьмется. Рабский труд конечно же, но работать надо. Разумеется, что профессионалы работают дороже и объективно стоимость работы стоит намного дороже

Худший ответ:
Здравствуйте. Все зависит от верстки, от функционала. Напишите свои контакты, свяжусь с Вами. Я занимаюсь версткой и вордпресс.
Вопрос: Верстке еще нужна поддержка IE11 в 2019?

Лучший ответ:
Пока мы будем оглядываться на осла и делать ему статистику, он будет фигурировать в списке все еще популярных браузеров. Поэтому я стараюсь избегать его всеми возможными методами. В большинстве проектов мы отказались от них напрочь, разве что еще не повесили «Идите куданадо» для тех, кто с IE заходит.
Но, конечно, есть требования под него корректировать. По иннерции в основном. С последней обновы, а может и раньше, Мелкомягкие сами акцентируют внимание, мол вот, попробуйте Edge. Вот этот браузер, это лучше, но тоже дает о себе знать при отладке.
А в плане работы по стандартам самый имба сейчас это Огнелис. Но они вроде как принимают активное участие в разработках спеки, поправьте меня те, кто этим всерьез интересовался.
Сверху общая картинка, а резюмировать можно следующим образом, есть в ТЗ, пожаланиях, донеси до заказчика, что это ему не впилось, но без пены у рта и либо делай по факту поддержку, либо нет. А вот просто так лишний раз прошу этот кусок браузера не открывать.
Сверху верно заметили, префиксы сейчас не нужны. Браузер = доступ в интернет = автообновления = актуальная версия браузера, а если пользователь убирает галочку с автообновы, это его сознательный выбор. А все современные браузеры отлично понимают без префиксов. Они требуются буквально в единичных случаях. И там могу порекомендовать не делать так. Т.е. не творить ту гадость, что требует префиксов, в духе изменения дизайна скроллбара и прочей дичи.

Худший ответ:
Запросы ещё есть с поддержкой этого браузера, если есть требование — не стоит на него забивать, потом огребете, поэтому проверяйте и прогоняйте автопрефексером.
Вопрос: Нерабочий код из книги Python Crash Course?

Лучший ответ:
привет. Столкнулся с тем же. На самом деле надо писать 
self.ship=Ship(self)

Худший ответ:
забавно что в книге оч много косяков 
так на стр 154 - нет Age=''
на 175 - не верный аргумент self.manufacturer, надо self.make
Вопрос: Что выбрать? Сборку или готовый ПК?

Лучший ответ:
Доверять подбор комплектующих можно только незаинтересованному человеку!
Готовые сборки собирают те кому необходимо избавить склады от неликвидных комплектующих а значит вы скорее всего получите явно не оптимальный цена/качество результат.

Мой вариант - сборка

Худший ответ:
Сборка. А если закупаться на Авито (там можно по совокупности объявлений выявить правильного продавца), то выйдет хорошая экономия.
Вопрос: Как передать переменную PHP между public function?

Лучший ответ:
Ни в коем случае не аргументом.
Класс - это холодильник.
Каждый метод-полка имеет доступ к $this - дверьке этого холодильника.
Ты пишешь классы с единственной целью - уменьшить количество аргументов, а не внутри класса заниматься передачей аргументов.
У класса есть свойства. Положи туда, возьми оттуда.
В этих свойствах можно что хочешь положить - хоть другой объект, хоть текст, хоть массив допустимых вариантов
Блин, представь что ты работаешь с массивом, только изнутри. Можно положить в соседнюю ячейку, потом взять из нее. Если она тебе нужна чистой - снеси. Или сделай имя ячейки такое, что больше нигде не пригодится и можешь не сносить. В связи с тем что свойство не-статическое, данные из него будут удалены когда ты удалишь сам обьект-ящик.
А удалится он при выходе из функции/файла где он был создан (разумеется если там сверху не навешен ящик, который создает объекты автоматически)
Другой вопрос, что негласной договоренностью и болью решено было В КОНСТРУКТОРЕ заполнять все свойства из приходящих данных (то бишь если классу нужны данные из бд - в конструкторе идем в базу, забираем необходимый минимум), а методы использовать для наполнения холодильника продуктами снаружи - так сказать ты предоставляешь кнопки через которые в холодильник другой программист может чего-нибудь накидать. Если холодильник изнутри наполняет себя чем-то сам, то вероятно это можно сделать иначе.

Худший ответ:
Спасибо большое за помощь, разобрался.
В контроллере Laravel сделал такpublic function firstFunc(){
           $variable = 25
           return view('myview')
           ->with('variable', $variable)
}

public function secondFunc(){
           $variable = $this->firstFunc()->variable;
           return view('anotherview')
           ->with('variable', $variable)
}
Спасибо большое.
Вопрос: Как прижать навигационную панель к верху страницы?

Лучший ответ:
Прибивать шапку удобно так, чтобы она следовала за пользователем.
Например так.

Худший ответ:
Вопрос легко гуглится. Задаёте эти css-свойства родительскому элементу ссылки.
.class {
    position: absolute;
    top: 0;
    right: 0;
}
Вопрос: Как наложить нетривиальное ограничение уникальности на поле?

Лучший ответ:
Ограничение уникальности накладывается на поля в рамках одного отношения, то есть то что вам хочется провернуть, а именно заглянуть как-то в другую табу чтобы проверить уникальность, из коробки такой возможности нет. Два наиболее очевидных способа решения задачи:
1) Прокинуть city_id в нужную таблицу. Да, не по феньшую, но реальность такая что нормализованные базы данных существуют только в книгах по базам данных или во всяких простячковых проектах, добро пожаловать.
2) Оставить все по феньшую и просто повесить триггер, в котором и будет происходить проверка уникальности по городу.

Худший ответ:
На мой взгляд в данном случае будет разумно сделать денормализацию - первый вариант, предложенный  orbit070. Это позволит, во-первых, снизить вероятность указания неверного города (значения город/район для вставки устанавливаются вместе), во-вторых, в дальнейшем упростит запросы по таблице ТП.
Вопрос: Есть ли быстрый язык программирования с возможностью динамической перекомпиляции?

Лучший ответ:
Actor model мб, Эрланг тот же?

Худший ответ:
Это не нужно. Blue-green deployment никто не отменял
Вопрос: Когда надо пушить git push --tags?

Лучший ответ:
git push просто без параметров зальет все локальные коммиты в последнюю удаленную ветку, если git знает о том, какая последняя конечно
git push с флагом -u позволяет указать, какой именно удаленный репозиторий (в вопросе это origin) и в какую в нем ветку (в вопросе это master) заливать коммиты
git remote управляет удаленными репозиториями
в частности git remote add добавляет новый под указанным именем (в вопросе это origin) и находящийся под указанным url (в вопросе это https://github.com/.git)
git push --tagsзаливает в последнюю удаленную ветку только тэги, без коммитов
но тэг - это всего лишь символьная ссылка на конкретный коммит и без самого коммита смысла в ней нет
поэтому git push --tags должно идти после git push

Худший ответ:
tag вешается на конкретный коммит.
Можно повесить тэг на коммит и запушить вместе
Можно запушить коммит, а потом повесить и запушить тэг.

Это ваше решение.
Суть в том, зачем вам нужен тег.
Многие пользуются бренчами, без тегов.
Вопрос: Стоит ли идти в smm и какие перспективы?

Лучший ответ:
В SMM стоит идти, если у вас есть во всех соцсетях личные профили с кучей подписчиков. Хороший SMM'щик должен быть очень контактным, чувствовать людей и тренды, обладать юмором и креативностью, не быть обидчивым и многое другое. Асоциальным гикам в этой области успеха не добиться.

Худший ответ:
Работы в смм дохрена , денег тоже
500-800 это явно зарплаты сммщика который умеет только принеси подай
Вопрос: Python как вывести динамический текст?

Лучший ответ:
Мне нравится библиотека tdqm ,  прогресс бар в 3 строки добавляется .
https://tqdm.github.io/

Худший ответ:
Как вариант - использовать библиотеку rich: https://pypi.org/project/rich/
Вопрос: Нужна ли recaptcha на странице логина?

Лучший ответ:
не нужна до момента
я мониторю конкурентов: когда, бывает, нас начинают брутить (мы капчу ставим на Nю попытку + есть анализ пакетов), сомтрю конкурента -  на логине капча появилась - момент настал
так что - сами оценивайте что удобнее, бывает что смысла нет - тем же конфирмомы мейла отсекается

Худший ответ:
Если кому-то упадёт обойти капчу, он обойдёт, не сомневайтесь. Сделайте лучше сервис хороший.
Вопрос должен стоят о том, как много ботов вас посещают. Если цифры за 30-50% общей аудитории - тогда, конечно, базовым способом защиты будет установка рекапчи. Но это не гарантия.
Вопрос: Из какой сферы применения Python будет легче перейти на Data Science?

Лучший ответ:
Аналитика. Человек с уверенным владением numpy и pandas на вес золота.

Худший ответ:
Аналитика. Человек с уверенным владением numpy и pandas на вес золота.
Вопрос: Как вывести несколько MessageBox на C++?

Лучший ответ:
MessageBox -- модальный. Невозможно одновременно вывести несколько MessageBox из одного потока. Можно создать несколько потоков и в каждом из них вызвать MessageBox.

Худший ответ:
Напиши свой диалог и выводи егго немодально.
Вопрос: Как создать файл с файловой системой и подключить в папку в windows 10?

Лучший ответ:
DISKPART это умеет.
create vdisk
select vdisk
attach vdisk
detach vdisk
Подробности на самостоятельное изучение.

Худший ответ:
В Десяточке Pro есть такая функция: https://remontka.pro/virtual-hdd-windows/
Вопрос: Map это объект или массив?

Лучший ответ:
Map - это объект. 
JavaScript массив - это тоже объект, так-то, но с авто индексацией элементов. По сути, массивы в JS это экземпляры класса Array.
Отвечая конкретнее на Ваш вопрос, Map это по сути обыкновенный объект с различными методами помощниками. Вы можете и сами такой же сделать накидав методов.

Худший ответ:
Map это объект, объект не может ничего возвращать, возвращать могут его методы. Другое дело что в отличие от объекта, создаваемого как {}, объект Map итерируемый. Итерация по нему происходит по парам ключ-значение.
Вопрос: Как сделать что бы самоудаляющая ссылка жила по времени?

Лучший ответ:
Так как стоит тег MySQL предполагаю что ссылки хранятся в базе?
Значит для каждой ссылки нужно сделать колонку со временем создания ссылки и временем первого клика (захода) по ней.
Время создания ссылки можно использовать если надо в принципе ограничить ссылку по времени, независимо от того посещали её или нет.
Время захода по умолчанию null. При открытии ссылки смотрим это значение, при первом заходе заполняем текущую дату, при повторных кликах сравниваем дату и текущее время.
Если прошло больше определённого времени считаем что ссылка удалена.
Так же можно фактически удалять из базы ссылки с истёкшей датой, при этом ссылки где дата посещения null считаем не посещёнными и не удаляем. Это уже зависит от ваших требований.

Худший ответ:
Создавать ссылки на время? Наверное, не ссылку, а предоставление контента в соответствии со сроком жизни?
Если да, то создаёте токен и время жизни. При запросах проверяете срок. Если срок вышел, то и еррор 404.
Вопрос: Что выбрать для REST API сервиса: .NET Core или .NET 4.5?

Лучший ответ:
Берите net 5. Выбор net 4.8 обоснован только в случае жуткого легаси кода завязанного на windows. Если что напишите мне в личку сделаю консультацию

Худший ответ:
Берите .NET Core
.NET Framework - это легаси.
Правда сейчас актуальная версия .net core - .NET 5 (да, без Core)
Вопрос: Include/header guards зачем?

Лучший ответ:
Зачем нужны header guards если в заголовочных файлах мы пишем только объявление функции?
Не всегда мы пишем только объявления. Иногда мы там пишем определения, например определяем структуры, или псевдонимы типов (typedef). Повторное определение таких вещей -- ошибка. Тут ты можешь сказать: "но я подключаю хедер в каждый исходник только один раз". Да, пока проект простой можно это отследить. Но когда одни хедеры начинают подключать другие хедеры это становится делать сложнее. header guards упрощают развитие проекта.
Иногда между хедерами бывают циклические зависимости, header guards позволяют разорвать цикл.

Худший ответ:
Чтобы случайно файл не был заинклюден дважды.
В общем случае это может привести к ошибке компиляции.
Вопрос: Как опредлить столбец по которому сортируется список в top (Linux)?

Лучший ответ:
поэкспериментируйте с кнопками x и z

Худший ответ:
Нажми 'f', там в заголовке будет написано. Тут же можно выбрать столбец и нажать 's', чтоб сменить столбец сортировки явно.
Про f можно почитать в общей справке ('?'), про s написано, когда нажмешь f
Вопрос: Wordpress: resize images — 128x128?

Лучший ответ:
Здравствуйте!
Необходимо создавать копии изображений не только в стандартных размерах WP, но и в кастомных, а именно - 128х128, 256x256.
https://wp-kama.ru/function/add_image_size
Регистрируете новые размеры 128х128 и 256х256
Как сделать подобное у уже имеющихся записей и сделать, чтобы подобное преобразовывалось у новых?
А далее при помощи такого плагина регенерируете миниатюры для существующие записей - https://ru.wordpress.org/plugins/regenerate-thumbnails/
Если картинок слишком много и есть доступ к SSH, то смотрите в сторону wp-cli
Если первый вариант, сложен, есть ли у WP resize на ходу?
Первый вариант проще простого. Тоже не сторонник ресайза на хожу

Худший ответ:
Здравствуйте!
Необходимо создавать копии изображений не только в стандартных размерах WP, но и в кастомных, а именно - 128х128, 256x256.
https://wp-kama.ru/function/add_image_size
Регистрируете новые размеры 128х128 и 256х256
Как сделать подобное у уже имеющихся записей и сделать, чтобы подобное преобразовывалось у новых?
А далее при помощи такого плагина регенерируете миниатюры для существующие записей - https://ru.wordpress.org/plugins/regenerate-thumbnails/
Если картинок слишком много и есть доступ к SSH, то смотрите в сторону wp-cli
Если первый вариант, сложен, есть ли у WP resize на ходу?
Первый вариант проще простого. Тоже не сторонник ресайза на хожу
Вопрос: Laravel Backpack License. Каким образом могут обнаружить?

Лучший ответ:
Вычислят по IP)

Худший ответ:
вычислить можно по многим косвенным признакам. 
но никто не будет этим заниматься.
Вопрос: Почему in_array(1.7, range(0, 2, 0.1)) вернет false?

Лучший ответ:
Числа с плавающей точкой не имеют той точности в двоичном представлении, с которой они визуально выглядят в php в десятичном представлении (даже если указать явно число знаков после запятой). Можно принудительно перевести needle и haystack в строку и попробовать еще раз сравнить.
Есть зарепорченый баг, который описывает эту ситуацию: ссылка

Худший ответ:
Вы не в математике. а в хранении десятичных чисел чего то не понимаете.
1.7 обычно выглядит как то вроде 1.70000000000000003 или 1.700000000001. Так вот вы сравниваете один вид (1.7) с другим, который в массиве.
Вопрос: Как маршрутизировать трафик на впс в зависимости от порта?

Лучший ответ:
iptables штоле?ipables -A PREROUTING  -d VPS_IP/32 -i eth0 -p tcp -m tcp --dport 7777 -j DNAT --to-destination FIRST_IP:DST_PORT
ipables -A PREROUTING  -d VPS_IP/32 -i eth0 -p tcp -m tcp --dport 8888 -j DNAT --to-destination SECOND_IP_IP:DST_PORT
если у вашего впс ip 1.1.1.1, у серверов ип 2.2.2.2 и 3.3.3.3 соответственно, а порты у них у обоих 9999, а интерфейс VPS, который смотрит в интырнет eth0 то:ipables -A PREROUTING  -d 1.1.1.1/32 -i eth0 -p tcp -m tcp --dport 7777 -j DNAT --to-destination 2.2.2.2:9999
ipables -A PREROUTING  -d 1.1.1.1/32 -i eth0 -p tcp -m tcp --dport 8888 -j DNAT --to-destination 3.3.3.3:9999

Худший ответ:
Стандартным образом в правилах фаерволла.
Вопрос: Как реализовать обратный скролл страницы?

Лучший ответ:
https://jsfiddle.net/5UUtV/1/
стырил со stackoverflow

Худший ответ:
Думаю, можно сделать легко. Как-то так:
1) Делаем страницу без скролла, которая умещается в экран.
2) На странице несколько дивов с размерами 100%, которые накладываются друг на друга, то есть это как бы слои. И вот эти дивы уже со скроллом.
3) Верхний див сделать невидимым. В нём с некоторой периодичностью, а также по событию проверяется текущая позиция скролла и используется в вычислениях.
4) Нижний див, соответственно, принимает это значение и программно меняет позицию своего скролла в обратном направлении. 
Проблема только в обычном взаимодействии со страницей. Я не уверен, как можно ловить только скролл верхним дивом, а всё остальное (клики, тапы) пропускать. Можно легко сделать, чтобы вся мышь или тач были прокинуты к нижнему диву, но тогда схема теряет смысл. В общем, думаю, можно как-то ловить клик, считать его координаты и передавать ниже.
Вопрос: Можно ли использовать «золотые» отечественные микросхемы для своих поделок?

Лучший ответ:
Ерунда вам кажется.
Берите и паяйте, если даташиты в свободном доступе.
Золото используется не потому, что военное, а потому что проводимость лучше.

Худший ответ:
Кроме собственно расходов на покупку микросхем с приемкой ВП вам не грозит абсолютно ничего.
Вопрос: Снова async/await, как синхронно получить результат запроса в переменную?

Лучший ответ:
Никак.
Вообще никак.
Нет, и так тоже не получится.

Худший ответ:
Уберите .then
Вопрос: Как ускорить импорт CSV файла с 300к записей?

Лучший ответ:
если файл простой, поля без кавычек и переводов строк, то читай fgets/explode
будет быстрее в 40 раз чем fgetcsv

плюс весь процесс заключить в транзакцию. тоже раз в 70 должно ускорить запись в базу

Но вообще конечно надо профилировать сначала.  То есть смотреть, какая часть скрипта занимает сколько времени. чтобы не тыкать пальцем в небо.

Поэтому 
1. Всё поставить на домашнем компе.
2. добавить перед циклом  $time = time(); а после цикла - echo time() - $time;
3. Сначала закомментировать всю работу с базой - то есть оставить только чтение из файла, и посмотреть сколько оно занимает
4. Раскомментировать операторы чтения из БД, и вычесть из результата время на чтение файла - получим сколько времени занимает чтение
5. Раскомментировать остальное и замерить полное выполнение скрипта, с записью в БД.

С этими цифрами уже идти сюда.
И задавать осмысленный вопрос, "как мне ускорить такую-то операцию", а не "как мне прикрутить кривые костыли к моему кривому коду"

Худший ответ:
$res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>2), $arSelect);
Вынесите это из цикла и обновляйте только те цены которые изменились и будет вам счастье.
Вопрос: Почему для обработки массива через map(), компонент должен принимать параметр как объект?

Лучший ответ:
Потому что компонент принимает все пропсы в 1 единственный аргумент - объект props, который уже содержит Ваш массив в поле array
Фигурные скобки - это деструктуризация объекта, то есть Вы извлекаете поле объекта в одноименную переменную, по сути, этоconst Second = ({array}) => {
    return (...)
}аналогично этому:const Second = (props) => {
    const {array} = props;
    return (...)
}что в свою очередь можно привести к этому:const Second = (props) => {
    const array = props.array;
    return (...)
}но с той лишь разницей, что в оригинальном примере нет отдельной переменной props

Худший ответ:
Плохо документацию читаешь, у функционального компонента входящий параметр - пропсы
https://uk.reactjs.org/docs/components-and-props.html
https://learn.javascript.ru/destructuring
Твоя последняя запись аналогична такойconst Second = (props) => {
   const array = props.array;
    return (...)
}
или такойconst Second = (props) => {
   const {array} = props;
    return (...)
}
Вопрос: Можно ли считать JavaScript полноценным языком программирования?

Лучший ответ:
Когда-то Голубицкий в Компьютерре прекрасно ответил на весь класс подобных вопросов.
Там был срач о профессиональной фототехнике и профессионалах-фотографах.
Так вот, он указал на мужика с обезьянкой на сочинском пляже и тот очевидный факт, что он именно фотографией профессионально зарабатывает, и люди ему за нее платят. Хотя дело тут не в профессиональных навыках мужика и уж тем более не в профессиональности его фототехники. А в обезьянке.
На JS пишут тонны кода. Будете вы лепить на него свой ярлычок со словом "полноценный" или нет - это исключительно ваши половые трудности. А караван идет.

Худший ответ:
ДА.
Вопрос: Как проверить совместимость железа с ubuntu?

Лучший ответ:
Да убунту у меня поднялась даже после смены всего железа, без переустановки, тогда как винда сдохла) , а кто бы мог подумать лет 10 назад

Худший ответ:
1. Скачать LiveCD с бубунтой
2. Загрузиться и запустить бубунту
...
n. PROFIT!
Вопрос: Что такое {Component}? И для чего оно в конкретном примере?

Лучший ответ:
Это называется named export. Изюминка в том, что у React есть только default export.
Вопрос - как оно тогда работает, если это named export, а у React только default?
Ответ в том, что React поставляется как CommonJS версия, а не ESModule.
Можно увидеть в исходниках, что везде в конце пишется "module.exports = React"
https://unpkg.com/react@16.8.6/index.js
https://unpkg.com/react@16.8.6/cjs/react.development.js
https://unpkg.com/react@16.8.6/cjs/react.productio...
Дальше происходит магия (вероятно, вебпака), и получается, что default export дополнительно продублирован named export'ами. 
Смотрите пример: https://codesandbox.io/embed/charming-wilbur-b6fwo
Я везде пишу React и всем советую.
И по поводу "меньше символов":// 70 chars
import React from 'react';
export class Foo extends React.Component {};

// 79 chars
import React, { Component } from 'react';
export class Foo extends Component {};

Худший ответ:
Импорт React.Component.
Для чего? - Ну, ОЧЕВИДНО, чтобы использовать его при определении классового компонента.
Вопрос: Программный RAID5 на NVME дисках нормально будет работать?

Лучший ответ:
RAID5 как технология признан ненадежным. Нередки случаи потери второго диска при ребилде, что фактически приводит к полной потере всех данных на массиве.

Худший ответ:
Где Вы собираетесь искать 4 M2 под NVME?
И так ли требуется все пихать на них, в виртуалках стараюсь по аналогии компов - системные диски на датастор из SSD RAID1, остальное на HDD (или датастором или сразу проброшенные) - тьфу-тьфу пока прекрасно справляется
Вопрос: Как с помощью Bash распаковать несколько тысяч архивов *.rar каждый архив в отдельную папку?

Лучший ответ:
пишем скрипт unpack

#!/bin/bash
find "$1" -name \*.rar -print0 | while read -d $'\0' f; do
   d=`basename "$f"`
   d="$2/${d/%.rar/}"
   mkdir -p "$d"
   cd "$d" && unrar x "$f"
done

запускаем
unpack "/путь/к rar файлам" "/путь/куда распаковать"

Худший ответ:
Сходу вижу два варианта:

добавить в пайплайн mkdir и mv;
man unrar на предмет задания директории куда распаковывать.
Вопрос: Верстка фигуры на фоне?

Лучший ответ:
Я бы сделал с помощью SVG... Ну просто потому-что он будет весить 500 байт максимум. А растр (даже восьмицветный GIF, а меньше цветов нельзя т.к. "зубчики" на границе появятся) -- это уже десяток килобайт.

Худший ответ:
Сделай просто фон такой без кода, в ФШ.
Вопрос: Как установить свежий PHP8?

Лучший ответ:
Я не до конца понимаю кто этот ondrej и можно ли вообще доверять этому репозиторию? - этому репу все доверяют

Худший ответ:
ondrej - это Андрей, он пишет php
Вопрос: Как спарсить динамический контент?

Лучший ответ:
Ничего там динамически не подключается. Весь контент страницы, в том числе нужные вам скрипты, вы получаете сразу же при загрузке. cheerio вам тут не нужен даже, да и не поможет.
Вот пример как можно получить нужное вам значение:request('https://zachtronics.bandcamp.com/album/shenzhen-i-o-ost', (error, response, body) => {
	const json = JSON.parse(body.match(/trackinfo:.*(\[.*?\])/)[1]);
	const mp3 = json[0]['file']['mp3-128'];
	console.log(mp3);
});

Худший ответ:
а request точно не вернет весь html файл страницы со скриптами?
если я правильно понимаю, то интересует массив trackinfo: [...] из главной страницы, может выйдет его без cheerio выцепить регулярным выражением из request.get('bandcamp.com/...'), ну и потом просто распарсить как обычную строку через JSON.parse
UPD
ну и кстати получается, ща регулярку доковыряю и тоже напишу свой граббер бандкампаrequest('https://zachtronics.bandcamp.com/album/shenzhen-i-o-ost', function (error, response, body) {
  res.send(body.match(/(?<=trackinfo:)(.*)(?=,)/gi))
  // кривая регулярка, выцепляет не всё что надо
});