@Fox Привет.Я описывал задачу в этой теме https://community.bablosoft.com/topic/27417/вызов-многопоточной-функции
Дело в том,что я не могу вообще никак перевести свой скрипт на многопоток,у меня тупо,что в вызове функции в многопоток,что просто обычный многопоток,выполняет свою работу с данными по очереди,а не одновременно.И это очень сильно бьет по времени,а нужна именно скорость обработки.Все уже готово и скрипт рабочий полностью,но скорость обработки заставила воспользоваться многопотоком.Ранее,подобных проблем не замечал,а сейчас элементарную задачу не могу уже несколько дней решить.
Скрипт очень простой и работает без браузера вообще,в скрипте используется только одно взаимодействие с гет запросом.Пример скрипта я приложил в этой теме(но без запросов),он точно почти такой же,как и основа.
Логика такова:
1)Запускается скрипт (без всяких ресурсов изначально и данных) и создаются два ресурса.
2)Делается запрос на сайт,который обрабатывается в отдельной функции,т.е. обрабатывает полученные строки и записывает в ресурс.
3)Вызывается функция в несколько потоков,которая работает (должна работать) с каждой строкой из созданного ранее ресурса(уникальной)в отдельном потоке.Данные обрабатываются и записываются во второй ранее созданный ресурс.
4)Как только данные обработаны,ресурс переводится в список и список записывается в файл.Более ничего не делается.
-Сперва я думал,что проблема в создаваемых в ходе работы ресурсах,но нет.Создавал изначально ресурсы и то же самое было.
-Потом пробовал брать из файлов значения\потом создавать файлы по ходу и из них брать данные\сохранять напрямую пытался и.т.д
-Возможно думал стоят какие то ограничения из за слабого пк с 4 гб оперативы и взял сервер с 64 гб,но как обрабатывалась строка за 5 минут на моем пк,так же по скорости и на серваке.Ладно, с этим я уже ничего не поделаю из за регулярок в проекте,согласен.Но вот перевести на поток и хотя бы по 10 строк одновременно обрабатывать,очень бы помогло.А сейчас в любом случае,у меня,сколько бы потоков не выставил - работает все равно как один,просто по очереди разный поток берет свои данные(
Не работают User-Agent(ы) в Терминальном режиме.
-
Здравствуйте.
Есть, к примеру, простенькая задача - через гет-запрос отправить любую фразу для поиска на Ютуб, а в полученных результатах спарсить пару видео.
Когда без настройки заголовков и прикручивания юзер-агентов отсылаем гет-запрос, то все работает, ютуб присылает в ответ, код страницы результата. Но там ругается, что браузер старый и просит установить более новую версию, потому что эту скоро прекратит использовать.

А когда начинаешь использовать Любой! Юзер-Агент в заголовке, то Терминальная версия перестает работать. Ответ от Ютуба представляет из себя большое количество непонятного кода.
При этом, если этот же Юзер-Агент использовать в Браузерной версии, то все работает нормально.
Отсюда вывод: Терминальная версия работает как-то не так, как должна. Либо я чего-то не понимаю.
Подскажите правильное решение или модернизируйте Терминальную версию.Прикрепляю для примера файлик. Там "опасный" участок кода обходится через метки и в таком виде работает, хотя Ютуб жалуется на старую версию браузера, если обход через метки убрать, ничего не работает.
Temp.xml -
@NikKey said in Не работают User-Agent(ы) в Терминальном режиме.:
Отсюда вывод: Терминальная версия работает как-то не так, как должна. Либо я чего-то не понимаю.
Последнее. Страница рендерится скриптами. Данные есть в коде страницы в json формате.
-
@UserTrue Спасибо за ответ, пойду искать json-элементы в ручную. Модуль по работе с json в БАС не работает с таким текстом и вычленить их не может.
И еще вопрос - А почему Ютуб ругается и говорит, что старая версия браузера, если делать запрос без Агентов?
В Терминальном режиме действительно старая версия работает? -
@NikKey said in Не работают User-Agent(ы) в Терминальном режиме.:
В Терминальном режиме действительно старая версия работает?
Это не терминальный режим, и вообще это не браузер. Это http клиент через него вы можете взаимодействовать с сервером напрямую, но в таком случае вам вручную придется делать то, что делает браузер, ставить заголовоки, генерировать различные токкены(если надо) и тд.
-
@UserTrue said in Не работают User-Agent(ы) в Терминальном режиме.:
Это не терминальный режим, и вообще это не браузер.
Вы придрались к формулировке, но не ответили на вопрос - в терминальной версии браузер более старой версии? Почему ругается ютуб?
-
@NikKey said in Не работают User-Agent(ы) в Терминальном режиме.:
Вы придрались к формулировке
Во-первых я не придрался, но вы видимо до сих пор не поняли, что http клиент != браузеру от слова "Совсем". Печально, когда люди упорствуют в своем невежестве.
Во-вторых я вам указал в чем причина:
@UserTrue said in Не работают User-Agent(ы) в Терминальном режиме.:в таком случае вам вручную придется делать то, что делает браузер, ставить заголовоки, генерировать различные токкены(если надо) и тд.
Вы скорей всего даже не установили заголовок user-agent, сервери видит, что к нему приходит какой-то странный запрос.