Curcours dbf где скачать
Перейти к содержимому

Curcours dbf где скачать

Curcours dbf где скачать

В последнее время технические ресурсы Банка России работают ненадежно. Усложнено получение данных о текущих курсах валют: от разработчиков требуют ставить специальные заголовки, данные не загружаются с первого раза. В следствие чего старые скрипты перестали работать.

Осложнение объясняют ведущейся на сервис DDoS атакой, но ведь нам от этого не легче.

Timeweb

Запущен телеграм-канал взаимоподдержки пользователей сайта.

Выход есть!

1. Подключаете этот скрипт со встроенной библиотекой money.js.

2. Конвертируете из любой валюты в любую по курсам ЦБ РФ.

Всё! Вот так просто.

А если без скриптов?

Достаточно заменить старые ссылки на сервисы ЦБ РФ на ссылки на нашем ресурсе, и получать все те же самые данные без какой-либо переделки старых скриптов.

Если вы использовали такую ссылку для получения котировок на сегодня:

То вам подойдет любая из двух ниже, в зависимости от того, нужна ли вам перекодировка в UTF-8 или устроит исходная 1251:

Если вы использовали английскую версию:

То на замену вам подойдую любые из этих, с кодировкой 1251 или в UTF-8:

Кроме файлов с курсами в формате XML на нашем ресурсе вы можете получить курсы валют в формате JSON и курсы ЦБ РФ в формате JSONP:

Для вашего удобства в последних есть курсы на сегодняшнюю и прошлую даты. Как использовать эти курсы.

Кроме того, доступны текущие курсы в формате, совместимом с библиотекой money.js и многими другими:

Вот и всё!

Время, которое вы бы потратили на переписывание и обновление старых приложений, теперь вы можете использовать и для более приятных занятий.

Timeweb

Этот проект был бы невозможен без выделенного сервера Xeon E5 Dual от Timeweb. Сервера для любых нагрузок — от Timeweb.

Как показать текущие курсы валют на сайте?

Нет ничего проще! Добавьте такой код где нужно показать курсы:

И такой код в начале страницы в теге <head>:

Курс валют ЦБ РФ для сайта на PHP

Эта функция выгружает данные курсов и сохраняет их в статической переменной внутри функции, таким образом что при повторном вызове этой функции обращения к API не будет.

Как получить последние курсы со стороны сервера?

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

Добавьте такой код в /etc/cron.hourly/cbr:

Затем дайте права на выполнение:

И сделайте первую загрузку:

Эта программа будет поддерживать самую актуальную версию данных о курсах валют во всех форматах в каталоге /var/cache/cbr/

Использовать их можно, например, так:

Да, вот так просто! Работает и оффлайн.

Условия использования

Раз, не более 5 запросов в секунду, 120 запросов в минуту с одного IP и не более 10000 запросов в сутки, пожалуйста. Если вам надо больше, то вы что-то делаете не так. Попробуйте использовать кеш данных курсов валют.

Два, разместите обратную ссылку на проект в одном из следующих форматов:

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

Понравилось? Помогло? Сберегло время?

Помогите с оплатой услуг CDN для проекта. Услуги CDN и хостинг обходятся в сумму порядка 25600 рублей в месяц.

Получение курсов валют с сайта Центробанка

При разработке интернет-магазинов или различных информеров для сайтов часто приходится реализовывать получение актуальных курсов валют. Не все разработчики знают, что достаточно удобно получать курсы на любую дату используя API сайта Центрального банка РФ.

Курсы на сутки вперёд доступны в формате XML по адресу

Для получения данных на любую прошедшую дату нужно воспользоваться параметром date_req

Теперь на нашем сайте нам достаточно распарсить XML файл и выбрать нужные валюты. Для выбора элементов из дерева можно использовать DOM или другие расширения для работы с XML.

Напишем класс, загружающий данные о курсах валют:

Теперь мы можем загружать и считывать значения курса любой валюты относительно рубля:

Обновление курсов нескольких валют в Yii Framework может, например, выглядеть так:

если хранение курсов производится в каком-либо компоненте.

Этот метод можно поместить в контроллер магазина и вызывать по таймауту или поместить в консольную команду и вызывать по Cron.

Не пропускайте новые статьи, бонусы и мастер-классы:

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

Все видеозаписи уроков обработаны, тайм-коды проставлены, вопросы отвечены. Наш самый крупный четырёхмесячный мастер-класс по Symfony завершён. Вот что у нас с вами получилось.

Любой программист с опытом осознаёт, что в неудачно спроектированном тяжёлом проекте изначально или со временем накапливается много неуправляемого и ненужного мусора. Это, например, повторяющийся код. В описании контроллера официального руководства Yii Framework указано, что Yii поддерживает вынос действий в отдельные классы и описывается процедура подключения этих действий к контроллерам. Но мало кто пользуется этим способом, так как не находит действительно тяжёлых повторяющихся экшенов.

Практически в каждом проекте возникает необходимость реализовать регистрацию и авторизацию пользователей. В рецепте RBAC и описание ролей в файле подробно описана реализация распределения доступа пользователям по ролям. Этот рецепт является уточнением рецепта Аутентификация и авторизация, в котором и описано использование доступа по ролям. Попробуем сделать настройку ролей пользователей более гибкой.

Не могу понять, какого хрена http://www.cbr.ru/scripts/XML_daily.asp возвращает контент 1 раз из 20-и. Пробовал через file_get_contents, через curl, через сокеты, теперь вот напрямую с помощью DOMDocument.

Через браузер вроде все ок. Иногда сбрасываются соединения, но не так безбожно.

Это руки у меня кривые или это фаервол такой?

Тоже не открывается. Значит админы уже Новый Год празднуют.

Подскажите как выдернуть дату из ответа <valcurs date=»10.04.2014″ name=»Foreign Currency Market» />

Fatal error: Call to undefined method DOMNodeList::getAttribute()

Еще замечено, что очень часто попытка загрузки через php url http://www.cbr.ru/scripts/XML_daily.asp выводит пустой ответ, на локалке лечится открытием этого урла в браузере, на хостинге — урла через wget.
Как побороть кто знает? Curl?

Тогда можно попробовать что-то вроде:

В общем, выцепить из массива первый элемент.

а как запустить контроллер по таймауту??

Вернее запустить метод контроллера по таймауту?

Оформить как консольную команду и настроить её запуск по Cron (должен быть в панели управления хостинга) как здесь.

простое кэширование на диске(public_html) раз в день по запросу без всяких кронов

Добрый день Дмитрий. Помогите создать 2 информера курса валют: евро и доллара. Я далек от программирования. Буду признателен.

Curcours dbf где скачать

Для создания функционала загрузки курсов валют будем использовать наработки предыдущей части. У нас уже есть справочник валют.

Нам понадобится создать:
— периодический регистр сведений КурсыВалют, периодичность — день;
— константу, в которой мы будем хранить список валют, курс которых нас интересует;
— общий модуль УправлениеВалютами, в который поместим все необходимые процедуры и функции.

Для загрузки будем использовать web-сервис DailyInfo, метод GetCursOnDate. Входным параметром для этого метода служит дата, на которую мы хотим получить данные.

Создаем регистр КурсыВалют, измерения Валюта (тип справочник Валюты), ресурс Курс (число 15, 4), периодичность — день. Так же создаем форму списка, в дальнейшем разместим на ней команду вызова процедуры обновления.

Создаем общий модуль УправлениеВалютами, в свойствах устанавливаем Сервер и Вызов сервера

Теперь создаем и размещаем команду ЗагрузитьКурсы в форме списка регистра КурсыВалют

Запускаем нашу конфигурацию в режиме 1С: Предприятие, заполняем список валют. Если список оставить пустым, то загрузятся курсы всех валют, зарегистрированных в системе.

Напоследок, можно еще добавить регламентное задание ЗагрузкаКурсовВалют, в качестве метода указываем УправлениеВалютами.ЗагрузкаКурсовВалют, расписание: каждый день; с 7:00:00 один раз в день.

3 комментария:

Здравствуйте, очень помогла ваша статья загрузки курсов валют. Всё прекрасно получилось всё работало а потом в один момент появилась ошибка, может ли быть из-за того что слишком часто загружал курсы ?? Я просто проверял и раз 5 а то и выше удалял загруженные и снова загружал

<Справочник.Валюты.Форма.ФормаСписка.Форма(10)>: Ошибка при вызове метода контекста (EnumValutes)
ДанныеВалюта = СервВалюты.EnumValutes(ЗначениеБулево);
по причине:
При вызове веб-сервиса произошла ошибка. Ошибка вызова операции сервиса: :DailyInfo:EnumValutes()
по причине:
При вызове веб-сервиса произошла ошибка. Неизвестная ошибка. Ошибка работы с Интернет: Number of redirects hit maximum amount
по причине:
Ошибка работы с Интернет: Number of redirects hit maximum amount

Человек. Ты просто Великолепен. Невероятно огромное Тебе СПАСИБО.
Все так четко, просто и понятно.
СПАСИБО.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *