Author Topic: Как считывать из текстового файла HTML-код?  (Read 4243 times)

0 Members and 1 Guest are viewing this topic.

Geraran

  • Освоившийся
  • **
  • Posts: 26
    • View Profile
    • Инфо-блог для инвалидов и не только
Всем привет.
Подскажите как считывать из notepad++ HTML-код для копипаста в блог.
Скрипт о смене раскладки клавы видел http://crapware.aidf.org/forum/index.php?topic=382.msg3093#msg3093
Задал вопрос, потому что в коде есть английские и русские буквы.
Желательно чтобы посты считывало по пронумерованному списку.
Пример прилагаю во вложенном файле.
Заранее спасибо.

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
А откуда вообще взят будет этот HTML-код?
Я не ду... Потому и не бу...

Космич

  • Активный участник
  • ***
  • Posts: 265
    • View Profile
Code: (clickermann) [Select]
$file_name = "file.txt"
$file_len  = TFCOUNT($file_name)

WHILE($count != $file_len)
   INC($k, 1)
   $check_out = 0
   FOR($i = $count + 1, $i < $file_len + 1 & $check_out = 0)
      INC($count, 1)
      IF(TFREAD($file_name, $i) = $k)
         FOR($j = $count + 1, $j < $file_len + 1 & $check_out = 0)
            INC($count, 1)
            IF(TFREAD($file_name, $j) = "</1j-cut>")
               ARRPUSH($array_story, $i+1)
               ARRPUSH($array_story, $j-1)
               $check_out = 1
            END_IF
         END_CYC
      END_IF
   END_CYC
END_CYC

$size = ARRSIZE($array_story)/2
PRINT("ВСЕГО РАССКАЗОВ:", $size)

FOR($i = 0, $i < $size)
   PRINT(CHAR(13), CHAR(10), "        Номер: ", $i+1)
   FOR($k = $array_story[$i*2], $k < $array_story[$i*2+1]+1)
      PRINT(TFREAD($file_name, $k))
   END_CYC
END_CYC

HALT

Code: () [Select]
1

Недолго проработала на Западе Алла Е., клюнувшая на газетное объявление
о наборе девушек в посудомойки. Каково же оказалось ее возмущение, когда
после пересечения границы у нее не отобрали, как это заведено, паспорт и
не продали ее в заграничный бордель, а действительно привезли в ресторан
и заставили мыть грязную посуду!

</1j-cut>

2

У евреев национальное блюдо - фаршированная рыба, у украинцев -
фаршированный перец, а у русских - фаршированный целлофан.
- А это как?
- А это сосиски.

</1j-cut>

3

- Дорогая, налей компота! Не видишь, что ли, как мне плохо?..
- Тебе какого компота, персикового или вишнёвого?
- О-гур-цо-во-го!

</1j-cut>
« Last Edit: February 26, 2019, 09:56:49 PM by Космич »
«Иногда ты ваяешь до тех пор, пока до тебя не дойдёт, что именно ты делаешь.»

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Просто как бы с толку сбит я... Тема названа - "Как считывать из текстового файла HTML-код?", а вопрос в теме - "Подскажите как считывать из notepad++". Вот и гадай сиди - откуда в итоге нужно текст читать...
Я не ду... Потому и не бу...

Космич

  • Активный участник
  • ***
  • Posts: 265
    • View Profile
Я вчера немного перестарался  :D

Code: (clickermann) [Select]
#DEFINE \N: CHAR(13), CHAR(10)

$file_name = "file.txt"
$file_len  = TFCOUNT($file_name)

WHILE($count != $file_len)
   INC($count, 1)
   SWITCH(TFREAD($file_name, $count))
   CASE($k+1)
      IF($check = 0)
         INC($k, 1)
         $temp = $count
         $check = 1
      END_IF
   CASE("</1j-cut>")
      IF($check = 1)
         ARRPUSH($array_story, $temp +1)
         ARRPUSH($array_story, $count-1)
         $check = 0
      END_IF
   END_SWITCH
END_CYC

$size = ARRSIZE($array_story)/2
PRINT("ВСЕГО РАССКАЗОВ:", $size, \N)

FOR($i = 0, $i < $size)
   $str = STRCONCAT("Номер: ", $i+1, \N)
   FOR($k = $array_story[$i*2], $k < $array_story[$i*2+1]+1)
      $str = STRCONCAT($str, TFREAD($file_name, $k), \N)
   END_CYC
   PRINT($str)
END_CYC

HALT
« Last Edit: February 27, 2019, 02:49:17 PM by Космич »
«Иногда ты ваяешь до тех пор, пока до тебя не дойдёт, что именно ты делаешь.»

Geraran

  • Освоившийся
  • **
  • Posts: 26
    • View Profile
    • Инфо-блог для инвалидов и не только
спасибо, позже начну разбираться

Geraran

  • Освоившийся
  • **
  • Posts: 26
    • View Profile
    • Инфо-блог для инвалидов и не только
P.S. Как "запустить" ваш скрипт чтобы вставлял в блог?
я запускал как есть, и вот какая картинка, в кликермане  (в самой проге) отображается кракозабры.  скришот прилагаю.

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

Скрипт написал. там ввод вручную без файла, но не вставляет весь текст, скриншот 222

мне нужно чтобы вы подсказали два действия чтения из тхт файла. чтобы не было кракозябр раскладом клавиатуры

1 действие вставить в поле "ТЕМА" например: Об опасности пальмового масла

2 действие во второе  поле вставить HTML-код:

<lj-like buttons="repost,facebook,twitter,google,vkontakte,odnoklassniki,pocket,tumblr,livejournal" />


<img alt="" src="jpg" />

<b>Употребление в пищу пальмового масла ведет к ожирению и развитию хронических заболеваний в глобальном масштабе, а его производство наносит непоправимый ущерб природе.</b>

<lj-cut>Таковы основные выводы доклада, подготовленного экспертами Всемирной организации здравоохранения, который должен быть опубликован в ближайшее время.

Индустрию по производству и продаже пальмового масла авторы документа напрямую сравнивают с табачной и алкогольной промышленностью &mdash; как по уровню вреда для здоровья и окружающей среды, так и по усилиям рекламщиков и лоббистов, пытающихся скрыть от потребителей правду в погоне за прибылью. Производители рекламируют его, как безвредное.

Ученым, политикам и сотрудникам медицинских учреждений всего мира рекомендуется пересмотреть свое отношение к пальмовому маслу, чтобы &laquo;уменьшить негативное влияние этой индустрии на здоровье человека и планеты&raquo;.
В 2015 году в США было запрещено использование в продуктах питания опасных для здоровья трансжиров, а в 2018 году ВОЗ выступила с аналогичной рекомендацией для всего мира. Эксперты организации опасаются, что производители еды попросту заменят запрещенные ингредиенты пальмовым маслом &mdash; дешевым, но потенциально ничуть не менее вредным.

</lj-cut>


Заранее спасибо
 

Космич

  • Активный участник
  • ***
  • Posts: 265
    • View Profile
Сначала реши проблему с кодировкой http://crapware.aidf.org/forum/index.php?topic=1049.0
« Last Edit: March 01, 2019, 09:54:13 PM by Космич »
«Иногда ты ваяешь до тех пор, пока до тебя не дойдёт, что именно ты делаешь.»

Geraran

  • Освоившийся
  • **
  • Posts: 26
    • View Profile
    • Инфо-блог для инвалидов и не только
сейчас ознакомлюсь, спасибо

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Файл с текстом должен быть в ANSI кодировке.

Geraran

  • Освоившийся
  • **
  • Posts: 26
    • View Profile
    • Инфо-блог для инвалидов и не только
да нет кракозяб при смене на  ANSI.

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

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

но когда ввел по больше, цвет синтаксиса скрипта изменился, и при клике на кнопку применить , выбило ошибку. скриншоты прилагаю

Если не сложно внесите изменения, или предложите иную альтернативу

 // -------- блок ввода "HTML-код" -----------------
LCLICK(850,670) // клик по полю "HTML-код"
DBLCLICK(850,670) // + двойной клик
TOCLIP ("<lj-cut>Таковы основные выводы доклада, подготовленного экспертами Всемирной организации здравоохранения, который должен быть опубликован в ближайшее время.

Индустрию по производству и продаже пальмового масла авторы документа напрямую сравнивают с табачной и алкогольной промышленностью &mdash;</lj-cut>") // копируем текст в буфер
WAITMS(500)
KEYDOWN (#CTRL) // Ctrl+V
WAITMS (500)
KEYDOWN (#V)
WAITMS (500)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (500)
 HALT
« Last Edit: March 02, 2019, 11:45:28 AM by Geraran »

Космич

  • Активный участник
  • ***
  • Posts: 265
    • View Profile
Написано же, что не хватает одной скобки  ;D

Выложи файл с html кодом
«Иногда ты ваяешь до тех пор, пока до тебя не дойдёт, что именно ты делаешь.»

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
У тебя текст с переходом на новую строку. Такая запись не сработает.

Можно составлять строку вот так:

Code: (clickermann) [Select]
TOCLIP (strconcat("<lj-cut>Таковы основные выводы доклада, подготовленного экспертами Всемирной организации здравоохранения, который должен быть опубликован в ближайшее время.", char(13),char(10), char(13),char(10),"Индустрию по производству и продаже пальмового масла авторы документа напрямую сравнивают с табачной и алкогольной промышленностью &mdash;</lj-cut>")) // копируем текст в буфер


print(fromclip())
halt

char(13),char(10) - это переход на новую строку.

Geraran

  • Освоившийся
  • **
  • Posts: 26
    • View Profile
    • Инфо-блог для инвалидов и не только
Написано же, что не хватает одной скобки  ;D

Выложи файл с html кодом

я знаю что пишет про скобку  :) там любой вставлять текст так же будет.

ниже посоветовали сделать текст с переходом на новую строку

Geraran

  • Освоившийся
  • **
  • Posts: 26
    • View Profile
    • Инфо-блог для инвалидов и не только
У тебя текст с переходом на новую строку. Такая запись не сработает.

Можно составлять строку вот так:

Code: (clickermann) [Select]
TOCLIP (strconcat("<lj-cut>Таковы основные выводы доклада, подготовленного экспертами Всемирной организации здравоохранения, который должен быть опубликован в ближайшее время.", char(13),char(10), char(13),char(10),"Индустрию по производству и продаже пальмового масла авторы документа напрямую сравнивают с табачной и алкогольной промышленностью &mdash;</lj-cut>")) // копируем текст в буфер


print(fromclip())
halt

char(13),char(10) - это переход на новую строку.

спасибо. я как и подозревал что не вмещается в строку. но если так все время писать в тексте после перехода char(13),char(10), char(13),char(10), то много мороки будет. может как то можно сделать, что бы вставить целый текст?

если нет, придется из блокнота, через буфер. как и думал в начале
« Last Edit: March 02, 2019, 06:31:34 PM by Geraran »