@boyfriend7 например
e95352ff-8bf5-4a05-bd00-d080f5ce3057-image.png
забыл добавить таймаут между запросами. без него будет плохо))
цикл будет крутиться пока не смениться ip.
править под себя, это только минимальный пример.

Всем привет.
Это мой первый скрипт на BAS.
Посмотрите, кому не сложно, и скажите что не правильно я сделал в нём.
Буду рад любой критике.
upd
Забыл написать назначение скрипта.
Скрипт для парсинга постов с реддита по вашему поисковому запросы. Парсит картинку и текст. Всё сохраняется в файлы.
Скачать - reddit.xml
P.S. Есть ошибка в скрипте, не сохраняются фото в нужную папку, если путь задать через ресурсы (пока не понял почему).
@Habip said in Мой скрипт для reddit.com:
Ни у кого нет желания или тут большинсво "просящие"?)
Вы перечитайте свой пост, вы не написали для чего именно ваш скрипт? Как в таком случае можно оценивать его "правильность"?
Скрипт я глянул и далеко не сразу понял, что он парсит посты с сайта.
У вас данные постов сохраняются в отдельные файлы (Имя поста, url, текст поста)

это дико не удобно. Если понадобится найти название поста по его содержанию или url, то искать придётся в разных файлах, в которых уйма других данных.
Лучше сохранять каждый пост в отдельную папку, в папку сохранять текстовый документ с названием и описанием поста и скриншот. Пользователю в таком случае нужно будет указать только лишь папку для сохранения постов.
В функции "PROXY" вы устанавливаете User-Agent из ресурса, но селекторы используете одни. Есть вероятность, что сайт имеет несколько стилей для разных устройств, в этом случае селекторы будут другими и парсер выдаст ошибку.
Во всех действиях "Запись В Файл" вы используете ресурс "из файла" в поле "Путь к файлу". Для понимания процесса работы ресурсов опишу логику: выводя ресурс, вы получаете его содержимое, а не путь до него. Что бы определить путь до файла, нужно использовать действие "Расположение Ресурса". Для модуля "Файловая система" код определения пути до файла поместили в сами действия, так как раньше пользователи часто сталкивались с этой проблемой.
По этому действия "Запись В Файл" работают корректно, а в действии "Скачать" нет, так как ресурс "файлы из папки" возвращает (кто бы мог подумать) файлы из папки. Выведите в лог ваш путь до файла
{{photo}}\img_[[CYCLE_INDEX]].png
и сразу поймёте почему это не работает.
На разбор и внятное описание у меня ушёл почти час времени. Это очень неблагодарная работа, по этому я не берусь улучшать или разбирать ошибки чужого проекта, даже платно.
@vsyacheskiy Я это уже понял, на все мои вопросы (и других) отвечают 2,5 человека. Жаль что коммьюнити у софта считай что нет(
@000 Да что-то я забыл об этом, обновил старт-пост. Разместил в этом разделе специально, т.к. скрипт-то кривой (я же новичок) и не хотелось бы кого-то ввести в заблуждение. Разместил тут, чтобы указали на какие-то ошибки, я бы всё исправил (понял бы их) и уже "отлаженый" скрипт выложил бы в разделе "Делюсь скриптами"
@Fox said in Мой скрипт для reddit.com:
@Habip said in Мой скрипт для reddit.com:
Ни у кого нет желания или тут большинсво "просящие"?)
Вы перечитайте свой пост, вы не написали для чего именно ваш скрипт? Как в таком случае можно оценивать его "правильность"?
Скрипт я глянул и далеко не сразу понял, что он парсит посты с сайта.
Да это я забыл совсем сделать, поторопился)
У вас данные постов сохраняются в отдельные файлы (Имя поста, url, текст поста)
это дико не удобно. Если понадобится найти название поста по его содержанию или url, то искать придётся в разных файлах, в которых уйма других данных.
Лучше сохранять каждый пост в отдельную папку, в папку сохранять текстовый документ с названием и описанием поста и скриншот. Пользователю в таком случае нужно будет указать только лишь папку для сохранения постов.
Дело в том что я думал сделать всё по папкам (видел видео на ютубе), то есть 1 пост = 1 папка, но я подумал что это не правильно, т.к. постов может быть, и 100, и 1000. Моя задумка была чтобы было всё в текстовых файлах отдельно + скрин, чтобы потом эти данные пользователь смог вставить в другой мой проект (будущий) постинга в твиттер (иными словами не предполагалось что эти файлы кто-то будет читать и вручном режиме использовать), но может это и ошибка, т.к. я ещё не совсем понимаю как правильно постить и исходя из этого я решил что подсовывать отдельные файлы проще, чем один общий и плясать с бубном заставляя БАС читать строки из одного файла (простите за сумбур, как смог так и описал задумку).
В функции "PROXY" вы устанавливаете User-Agent из ресурса, но селекторы используете одни. Есть вероятность, что сайт имеет несколько стилей для разных устройств, в этом случае селекторы будут другими и парсер выдаст ошибку.
Получается надо для User-Agent сделать свою функцию? И да, вы правы я тестировал только на десктопе (win + chrome)
Во всех действиях "Запись В Файл" вы используете ресурс "из файла" в поле "Путь к файлу". Для понимания процесса работы ресурсов опишу логику: выводя ресурс, вы получаете его содержимое, а не путь до него. Что бы определить путь до файла, нужно использовать действие "Расположение Ресурса". Для модуля "Файловая система" код определения пути до файла поместили в сами действия, так как раньше пользователи часто сталкивались с этой проблемой.
По этому действия "Запись В Файл" работают корректно, а в действии "Скачать" нет, так как ресурс "файлы из папки" возвращает (кто бы мог подумать) файлы из папки. Выведите в лог ваш путь до файла{{photo}}\img_[[CYCLE_INDEX]].pngи сразу поймёте почему это не работает.
Спасибо, буду разбираться, а то я полазил по документации, но так и ничего не понял. Просто когда там был у меня прямой путь к папке куда сохранять (c:\folder\img\img_[[CYCLE_INDEX]].png), всё работало и я не понимал почему не работает с ресурсом, я же фактически передаю тоже значение (тот же путь к папке) только в ресурсе.
На разбор и внятное описание у меня ушёл почти час времени. Это очень неблагодарная работа, по этому я не берусь улучшать или разбирать ошибки чужого проекта, даже платно.
Я это понимаю, вижу что в основном вы и ещё 2,5 человека отвечает и думаю тут многие "отвечающим" благодарны за это. Но и нас (новичков) понять можно, вроде документация и видео есть, но не на всё можно найти или понять решение своей задачи, это же только опыт помогает. И помощь опытных товарищей из комьюнити это то что продвигает софт в массы. Спасибо.