как оптимизировать постинг

jumanji

Client
Регистрация
23.12.2011
Сообщения
41
Благодарностей
8
Баллы
8
Есть задача постить на форуме текст, в наличии 100 файлов тхт, структура которых

название статьи
текст статьи

соответственно при постинге нужно брать первую строку из файла и ставить в title, ну и для текста статьи взять весь текст из тхт файла
делаю следующим образом:
1. есть текстовый файл 1.тхт и в нем 100 строк вида
C:\Users\Administrator\Desktop\forum\xew\1(1).txt
....
C:\Users\Administrator\Desktop\forum\xew\1(100).txt
2. получаю строку из списка на файл C:\Users\Administrator\Desktop\forum\xew\1(1).txt
3. далее читаю файл C:\Users\Administrator\Desktop\forum\xew\1(1).txt и присваиваю переменную
4. записываю файл с текстом из C:\Users\Administrator\Desktop\forum\xew\1(1).txt в файл textposta.txt
5. создаю список со ссылкой на textposta.txt
6. операции на списком и получаю первую строку, создаю переменную и вставляю ее в title
7. прочитать файл, беру весь текст из textposta.txt, создаю переменную и ставлю этот текст в сам пост
в проджектмейкере все работает, постинг ведется, но в логах пишет

Внимание! Вы пытаетесь изменить файл C:\Users\Administrator\Desktop\forum\xew\textposta.txt привязанный к списку или таблице, это может вызвать проблемы в работе. Для файлов, привязанных к спискам и таблицам, используйте соответствующие инструменты.

подскажите как нужно оптимизировать, чтобы оперативка не напрягалась и не вылетало в логах запись?
 

inilim

Client
Регистрация
16.09.2017
Сообщения
441
Благодарностей
170
Баллы
43
4. записываю файл с текстом из C:\Users\Administrator\Desktop\forum\xew\1(1).txt в файл textposta.txt
Для чего это действие? Если файл с текстом уже есть в 1(1).txt
5. создаю список со ссылкой на textposta.txt
И это действие тоже не понятна.
 

jumanji

Client
Регистрация
23.12.2011
Сообщения
41
Благодарностей
8
Баллы
8
т.е. тупо захожу на C:\Users\Administrator\Desktop\forum\xew\1(1).txt беру первую строку и
C:\Users\Administrator\Desktop\forum\xew\1(1).txt беру весь текст???
 

inilim

Client
Регистрация
16.09.2017
Сообщения
441
Благодарностей
170
Баллы
43
В файле первая строка у тебя это title? Если это так то у тебя изначально все не правильно.
Но даже из этого можно выкрутится.
Лучше всего хранить текст и title в разных файлах. (text-1.txt title-1.txt)

Зенка ругается изза того что ты используешь два кубика для одного файла. То есть у тебя файл идет как список, и как просто текстовой файл.

Если у тебя нет возможности исправить. Тогда лучше будет регуляркой брать первую строку и вставлять ее в переменную, после, этой же регуляркой сделать замену на пустоту, далее на всякий случай за "Тримить". Ну а там уже понятно.
 

jumanji

Client
Регистрация
23.12.2011
Сообщения
41
Благодарностей
8
Баллы
8
а почему в операции над списками нет возможности взять все строки?? например я беру из файла первую строку для тайтла, а все что так же в этом списке есть беру как текст? весь текст как я понял можно взять только если прочитать файл
 

inilim

Client
Регистрация
16.09.2017
Сообщения
441
Благодарностей
170
Баллы
43
Можно взять все и из списка, но это извращение. Сделать цикл.
Вам стоит изменить подготовку контента.
 
  • Спасибо
Реакции: jumanji

jumanji

Client
Регистрация
23.12.2011
Сообщения
41
Благодарностей
8
Баллы
8
а вы знаете как это массово сделать - разбить один текстовый файл vestext.txt, на 2 файла - text-1.txt title-1.txt ??
и как взять все строки из списка???
 

inilim

Client
Регистрация
16.09.2017
Сообщения
441
Благодарностей
170
Баллы
43
Покажи пример текста. хотя бы первые 4 строчки. Есть ли там html код, или еще что. как выглядит title.
Нужно больше инфы.
 

jumanji

Client
Регистрация
23.12.2011
Сообщения
41
Благодарностей
8
Баллы
8
да выглядит так, например:
Код:
как оптимизировать постинг
Есть задача постить на форуме текст, в наличии 100 файлов тхт, структура которых
название статьи
текст статьи
соответственно при постинге нужно брать первую строку из файла и ставить в title, ну и для текста статьи взять весь текст из тхт файла
делаю следующим образом:
первая строка title, остальное текст
 

inilim

Client
Регистрация
16.09.2017
Сообщения
441
Благодарностей
170
Баллы
43
И так, по порядку.
1. Из списка берем путь до файла для постинга в переменную pathFile.
2. Берем кубик Данные > Файлы. Вставляем в путь переменную pathFile. как на картинке.

Screenshot_2.jpg


3. Взятый текст кладем в переменную bodyText.
4. Берем кубик Данные > Обработка текста. Regex.

Screenshot_3.jpg


Регулярка:
Код:
^(.*?)\r\n
5. Гладем найденное в переменную Title.
6. Тримим переменную Title. Кубиком Обработка текста.
7. Берем еще кубик Обработку текста, но уже заменяем. Первую строку на пустоту. (Так как нам в тексте title не нужен.)

Screenshot_4.jpg


8. Тримим переменную bodyText.

На выходе у вас две переменные bodyText с содержанием и Title с названием.
Дальше уже как у вас устроено.
Переменные можете назвать как хотите. Те списке что вы упоминули ранее удалите, они не нужны.
Если вам все еще интересно как взять из списка все, с начала разберитесь с этим.
 
  • Спасибо
Реакции: jumanji

jumanji

Client
Регистрация
23.12.2011
Сообщения
41
Благодарностей
8
Баллы
8
спасибо за развернутый ответ. подскажите что значит Тримим переменную?
 

inilim

Client
Регистрация
16.09.2017
Сообщения
441
Благодарностей
170
Баллы
43
спасибо за развернутый ответ. подскажите что значит Тримим переменную?
Это одна из функций кубика.
Данные > Обработка текста > Trim
Trim - это функция которая удаляет слева и справа пробелы, табуляцию, перевод строки и т.д. Другими словами убирает лишние скрытые символы.

Вам срочно нужно изучить азы программирования. Ну или хотя бы просмотреть уроки по зенке. https://www.youtube.com/channel/UCMYg3vf_06rniXOUEq4C2jg/videos
 
  • Спасибо
Реакции: jumanji

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 481
Благодарностей
8 692
Баллы
113
Последнее редактирование:
  • Спасибо
Реакции: jumanji и inilim

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)