- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

VK станет единственным владельцем образовательного сервиса «Сферум»
Закрытие сделки запланировано до конца апреля
Оксана Мамчуева

Максимизируем рекламный доход: разбираемся с рекламными форматами и расположением блоков на сайте
Подробные рекомендации
Сергей Самонин
Как сделать, чтобы из статьи удалялись имена сайтов (те, которые не в тегах).
Например, есть текст: На сайте site.ru вы можете узнать о разведении гусей. Надо удалить site.ru и получить: На сайте вы можете узнать о разведении гусей. А также удалить вертикальную черту, минус, тире и короткое тире перед и после имени сайта, которые часто используют в тайтле.
Вот функция, которая делает это - http://jako.tech/functions/RemSiteNames.txt
Добавьте её в thread_events.txt и вызывайте в событии сохранения статьи:
function on_Save(){
$output=RemSiteNames($output);
}
Заметил, что некоторые сайты c https не парсятся. Оказалось, что надо использовать протокол безопасности Tls1.2. Для этого в events.txt после строки function on_Programm_Start(){ вставьте: setsecurityprotocoltype('tls12');
Вот так:
function on_Programm_Start(){
setsecurityprotocoltype('tls12');
}
Обязательно все сделайте это. И в settings.txt установите *scripting=1 .
Довольно частый вопрос: Как сделать, чтобы статьи сохранялись в один файл и в одну строку?
В settings.txt ставим настройки:
*savetoonefile=1
*scripting=1
Удаление переносов делаем через скрипт в thread_events.txt. Вставим в событие сохранения статьи код, удаляющий все переносы:
function on_Save(){
$output=str_replace("\r","",$output); //удаляем возврат каретки
$output=str_replace("\n","",$output); //удаляем перевод строки
$output=$output+"\r\n"; //добавляем перевод в конец строки
}
В template.txt делаем шаблон:
[ARTICLE_KEY];Бла-бла-бла;[ARTICLE_H];[ARTICLE_BODY]
В одну строку, без переноса строки в конце.
На выходе получаем файл мультикеев, который можно заряжать в дорген. В качестве разделителя частей строки лучше использовать не точку с запятой, а какой-нибудь другой символ, который обычно не используется в статьях.
C 11 по 25 ноября программу можно приобрести за 1700 рублей (скидка 32%)!
Как там софт жив еще?)
Как там софт жив еще?)
Да, софт полностью в боевом режиме!
Обновление 2.1.3.
1. Исправил ошибку с загрузкой страниц через редирект с портом в урле (Location: https://site.ru:443/).
2. Сделал возможность указать в настройке striplinks какие ссылки не надо удалять. Например, чтобы удалялись все ссылки, кроме ссылок содержащих в урле "somepage.html", или слово "Buy" в анкоре, или "color:#00C" в стиле, надо задать настройку:
*striplinks=1{somepage.html,Buy,color:#00C}
3. Добавил настройку protectedblocksdetect, в которой можно задать блоки, которые не нужно удалять. И сделал, чтобы specialblocksdetect блоки, тоже не удалялись. Раньше они могли быть удалены, если вдруг принимались программой за мусор.
Отличие protectedblocksdetect (защищённых блоков) от specialblocksdetect (специальных блоков) в том, что они могут быть изменены (удаляются атрибуты не указанные в keepattributes).
Например, нужно защитить от удаления этот блок:
<div class="testclass1">
<li class="testclass2">Hello!</li>
</div>
Если указать настройку:
*protectedblocksdetect=testclass1
или
*protectedblocksdetect=testclass2
или
*protectedblocksdetect=Hello!
, то результат будет:
<div>
<li>Hello!</li>
</div>
Отличное обновление. Рекомендую парсер к покупки, пользуюсь уже полгода, работает прекрасно!
Возможно некоторым покажется неудобный процесс настройки, т.к в интерфейсе программы настройки парсинга не сделать, нужно править файл настроек.
Mrtrick, ок, сделаю возможность править настройки в интерфейсе.
Mrtrick, в общем, думал я, как сделать редактирование настроек в интерфейсе, и понял, что в данном конкретном случае это не будет удобнее, чем задание их в файле напрямую потому, что большинство настроек это просто перечисление через запятую строковых данных, как например: *specialblocksdetect=instagram,twitter,youtube
В интерфейсе эта настройка была бы списком:
instagram
twitter
youtube
А в случае, когда этих данных много (например у removeblocks), то списки отображались бы не полностью, а с прокруткой, что затрудняет их визуальное восприятие. На мой взгляд, удобнее просто редактировать настройки в файле потому, что они все сразу видны как на ладони. Можно, например, открыть несколько файлов и легко сравнить, чем они отличаются.
Если у вас есть предложения, как организовать удобное редактирование настроек в интерфейсе, пишите.
Тем, кто собирается купить парсер: вот пример настроек по умолчанию, а вот инструкция с их разъяснением. Если есть вопросы, пишите. Настраивать парсер под каждый сайт не требуется. Настройки задаются общие для всех сайтов, либо для нестандартных случаев.
Mrtrick, Если есть вопросы, пишите.
Написал вчера вам на эл.почту насчет настроек, пока ответ не получил насчет моей идеи :)