Гороскоп на каждый день

Опубликовал mdbm (mdbm) в раздел Обмен - Интеграция с WEB

Внешняя обработка, позволяющая получать ежедневный гороскоп по дате рождения.

Написать подобную обработку навеяло изучение статьи о чтении динамических страниц, опубликованной http://www.infostart.ru/public/60330/ (автор: mai).

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

В качестве источника информации использовал сайт http://horoscopes.rambler.ru

Скачать файлы

Наименование Файл Версия Размер
Получить гороскоп
.ert 32,50Kb
02.07.12
7
.ert 32,50Kb 7 Скачать

См. также

Комментарии
1. Андрей (AndrewEv) 18 20.01.10 17:42 Сейчас в теме
Троян-ДаунЛоадер в файле. Автор, извинитесь перед нами, пожалуйста
2. Алексей Плутенко (Noy) 1054 20.01.10 18:03 Сейчас в теме
(1) Антивирус свой воспитывай! Ниче там нет.
3. Артур Коржан (1v7) 199 21.01.10 13:14 Сейчас в теме
Вирусов нет! NOD32
А гороскоп прикольный+
4. Артур Коржан (1v7) 199 21.01.10 14:11 Сейчас в теме
только какие то теги в конце вылазят...
*****************************************************
Гороскоп для знака Рак на 21 января 2010

Если утром вам покажется, что цель недостижима, не паникуйте.
Возможно, такое действие на вас оказывает критика со стороны другого человека (например, вашего партнера по делам, товарища по учебе, консультанта по важным вопросам).
Любое высказанное вам в лицо мнение обязательно примите во внимание, так как в прямоте и откровенности вашим оппонентам не откажешь.
Но как только обсуждение будет окончено, суммируйте сказанное и немедленно действуйте.
Если вы будете смелее и не станете сидеть сложа руки, то к вечеру сможете многого добиться.








********************************horoscopes.rambler.ru
5. Андрей Зайцев (zaic) 111 21.01.10 15:47 Сейчас в теме
Касперский не дал скачать (базы в нем сегодняшние).
6. mdbm (mdbm) 188 22.01.10 10:40 Сейчас в теме
Странно, а вирус обнаруживается при запуске обработчика или при скачивании ?
7. mdbm (mdbm) 188 22.01.10 11:01 Сейчас в теме
Да, действительно Касперский выдает вирус, а на НОД32 тишина.
Но глядя на рисунок видно, что вирус обнаружен в тексте кода 1С.
Вы можете открыть текст и убедится, что под вирусом Касперский воспринимает код:

	
        Скрипт = СоздатьОбъект("MSScriptControl.ScriptControl");
	Скрипт.language = "vbscript";
	x = CreateObject("Microsoft.XMLHTTP");
	x.Open("GET", Адрес, 0,"","");
	x.Send();
	s = CreateObject("ADODB.Stream");
	s.Mode = 3;
	s.Type = 1;
	s.Open();
	Скрипт.AddObject("s",s);
	Скрипт.AddObject("x",x);
	Скрипт.Eval("s.Write(x.responseBody)");
	s.SaveToFile(ФайлРезультата, 2);
...Показать Скрыть


и в отчете касперского так и написано

2010_ПолучитьГороскоп.ert//1С ProgramText
Прикрепленные файлы:
8. mdbm (mdbm) 188 22.01.10 11:21 Сейчас в теме
9. Андрей (AndrewEv) 18 22.01.10 23:05 Сейчас в теме
прикольно, Касперский пошёл в 1C...
10. Саня Пупкин (pupkinSana) 20 02.02.10 12:49 Сейчас в теме
Да троянчик есть здесь...
11. mdbm (mdbm) 188 02.02.10 15:59 Сейчас в теме
Я написал письмо в лабораторию Касперского.
Посмотрим что они ответят.


Вот текст письма:

Добрый день.
Я написал программу - внешнюю обработку для программы 1С.
Выложил ее на сайте.
При попытке скачать, антивирус выдает сообщение о вирусе.

В тексте программы есть такой код:
Скрипт = СоздатьОбъект("MSScriptControl.ScriptControl");
Скрипт.language = "vbscript";
x = CreateObject("Microsoft.XMLHTTP");
x.Open("GET", Адрес, 0,"","");
x.Send();
s = CreateObject("ADODB.Stream");
s.Mode = 3;
s.Type = 1;
s.Open();
Скрипт.AddObject("s",s);
Скрипт.AddObject("x",x);
Скрипт.Eval("s.Write(x.responseBody)");
s.SaveToFile(ФайлРезультата, 2);

Данный скрипт открывает страницу определенного сайта и сохраняет ее в текстовый файл.

Не могли бы вы объяснить почему данный текст программы блокируется антивирусом как вирус и мешает пользователям скачать мою обработку ?

При этом НОД32 ДокторВеб молчат.
...Показать Скрыть


Ваш запрос успешно отправлен в Департамент исследований и разработки Лаборатории Касперского.

ждем....
12. mdbm (mdbm) 188 09.02.10 15:02 Сейчас в теме
13. Симулякр Штирлиц (simuljakr1) 25.11.10 17:42 Сейчас в теме
Нашел небольшой косячок :)
"Козерога" неправильно обрабатывает...
Потому что "козерожье" условие никогда не выполняется:

	ИначеЕсли (ТекДата>=Дата("22.12."+Год)) И (ТекДата<=Дата("20.01."+Год))  Тогда
Возврат ?(Язык="ru","Козерог","capricorn");


Но в целом прикольная обработка +
14. Артур Коржан (1v7) 199 20.06.12 11:49 Сейчас в теме
перестал работать... дело в Рамблере
15. mdbm (mdbm) 188 02.07.12 22:52 Сейчас в теме
(14) 1v7, Обновил ) Продолжаем получать звёздные подсказки ))
16. Артур Коржан (1v7) 199 04.07.12 09:35 Сейчас в теме
(15) mdbm, спасибо!!! а то без вгляда в будущее по утрам тяжело жить))
единственное, для комфорта, надо рабочие сообщения "зарисовать":
//Сообщить("НачальнаяСтрока = "+НачальнаяСтрока);
//Сообщить("КонечнаяСтрока = "+КонечнаяСтрока);
17. Артур Коржан (1v7) 199 04.07.12 12:48 Сейчас в теме
как писал simuljakr1, есть косячок. я бы так поправил:

Функция глПолучитьЗнакЗодиака(ТекДата,Язык="ru") Экспорт
Год=Прав(ДатаГод(ТекДата),2);
Если (ТекДата>=Дата("21.03."+Год)) И (ТекДата<=Дата("20.04."+Год)) Тогда
Возврат ?(Язык="ru","Овен","aries");
ИначеЕсли (ТекДата>=Дата("21.04."+Год)) И (ТекДата<=Дата("20.05."+Год)) Тогда
Возврат ?(Язык="ru","Телец","taurus");
ИначеЕсли (ТекДата>=Дата("21.05."+Год)) И (ТекДата<=Дата("21.06."+Год)) Тогда
Возврат ?(Язык="ru","Близнец","gemini");
ИначеЕсли (ТекДата>=Дата("22.06."+Год)) И (ТекДата<=Дата("22.07."+Год)) Тогда
Возврат ?(Язык="ru","Рак","cancer");
ИначеЕсли (ТекДата>=Дата("23.07."+Год)) И (ТекДата<=Дата("23.08."+Год)) Тогда
Возврат ?(Язык="ru","Лев","leo");
ИначеЕсли (ТекДата>=Дата("24.08."+Год)) И (ТекДата<=Дата("23.09."+Год)) Тогда
Возврат ?(Язык="ru","Дева","virgo");
ИначеЕсли (ТекДата>=Дата("23.09."+Год)) И (ТекДата<=Дата("23.10."+Год)) Тогда
Возврат ?(Язык="ru","Весы","libra");
ИначеЕсли (ТекДата>=Дата("24.10."+Год)) И (ТекДата<=Дата("22.11."+Год)) Тогда
Возврат ?(Язык="ru","Скорпион","scorpio");
ИначеЕсли (ТекДата>=Дата("23.11."+Год)) И (ТекДата<=Дата("21.12."+Год)) Тогда
Возврат ?(Язык="ru","Стрелец","sagittarius");
ИначеЕсли (ТекДата>=Дата("21.01."+Год)) И (ТекДата<=Дата("18.02."+Год)) Тогда
Возврат ?(Язык="ru","Водолей","aquarius");
ИначеЕсли (ТекДата>=Дата("19.02."+Год)) И (ТекДата<=Дата("20.03."+Год)) Тогда
Возврат ?(Язык="ru","Рыба","pisces");
ИначеЕсли (ТекДата>=Дата("22.12."+Год)) ИЛИ (ТекДата<=Дата("20.01."+Год)) Тогда
Возврат ?(Язык="ru","Козерог","capricorn");
КонецЕсли;
КонецФункции