Мультиязычный парсер для xml от bigfishgames
Ранее я публиковал код парсера для xml фида от Bigfishgames. Сейчас я выкладываю обновленную версию скрипта. Кто не в курсе, то парсер написан на php + mysql.
Из обновлений:
- теперь тянет английские, французские, немецкие и испанские игры под windows, а так же мас игры для английского
- выложено все одним архивом, чтобы было удобней использовать. В прошлый раз я код выложил прямо в посте, что было не совсем удобно, так как все спецсимволы были преобразованы вордпрессом в сущности
- также в архиве выложил модуль по работе с sql, которым сам пользуюсь. Кому то может пригодиться.
- так же в архиве дампы структур необходимых таблиц для mysql
Описание парсера
- Скрипт читает xml с сервера бигфиша, разбирает его и отправляет в специальную таблицу на вашем mysql сервере. Для каждого типа фида своя таблица. Далее с этой таблицей поступаем, как хотим. Логично ее использовать как источник для добавления игр на свой сайт.
- При парсинге автоматически меняется ссылка на скачку игры с сервера bfg. Поясню немного. По умолчанию в бигфише ссылки на скачку нет, вместо этого есть ссылка на страницу, которая должна открываться во фрейме. На этой странице есть какой то текст и кнопка скачать игру.
Для того чтобы получить прямую ссылку на файл игры нужно заменить в ссылке на страницу игры от бигфиша слово index на download. В скрипте такая замена производится, и в таблицу пишем ссылку на скачку игры. - Управление языком производиться через параметры методом GET по ссылкам
bfgparser.php?type=pc&lang=en английские windows игры
bfgparser.php?type=pc&lang=de немецкие windows игры
bfgparser.php?type=pc&lang=fr французские windows игры
bfgparser.php?type=pc&lang=es испанские windows игры
bfgparser.php?type=mac&lang=en - английские mac игры
Установка
- Перепишите файлы bfgparser.php , sql.php на сервер
- В свою базу данных mysql импортируем таблицы (en_bigfish, de_bigfish, es_bigfish, fr_bigfish, mac_bigfish). Дампы этих таблиц в архиве.
- В фале sql.php прописать данные вашего мускульного сервера: сервер, логин, пароль, название базы. В самом верху скрипта увидите куда что прописать.
- В файле bfgparser.php в переменной $myBFGuser записать ваш логин с бигфише (Важно!)
- Вызвать скрипт с нужными параметрами (см. п.3 описания)
Расширить скрипт под другие варианты (например, под немецкие мак игры) очень просто. Нужно хоть немного разбираться в php.
Этот скрипт не разбирает xml с онлайн играми, так как там немного иная структура фида и таблицы. При желании можете дописать и это, но если кому то это понадобиться и разбираться лень, то могу дать и отдельный скрипт и под этот вариант.
Tags: Bigfishgames, xml, парсер
February 16th, 2009 at 9:41 am
в php не силен, можно на примере как в фале sql.php прописать данные сервера: сервер, логин, пароль, название базы
$DB_Handler=mysql_pconnect(’сервер’,'пользователь’,'пароль’);
mysql_select_db(’название базы’,$DB_Handler);
так?
работает ли на денвере?
February 16th, 2009 at 10:03 am
да, так
на денвере я не проверял, но должно работать
в php придется прокачиваться, так как это всего лишь один кусок из мозайки вашего будущего сайта
February 16th, 2009 at 12:46 pm
я для wordpress пока вот этим пользуюсь плагином
_http://wordpress.org/extend/plugins/bigfishgames-syndicate/
но не знаю как переделать чтоб автоматом в рубрики добавлял
а на денвере при попытке импорта в таблицу вываливается ошибка
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */
Ответ MySQL:
#1231 - Variable ‘character_set_client’ can’t be set to the value of ‘NULL’
а при запуске выдает Fatal error: Call to undefined function curl_init() in … www\bfgparser.php on line 179
February 16th, 2009 at 12:58 pm
ошибка наверное из за того, что я экспортировал таблицы через mysql front, который и навставлял свои комментарии. При импорте ты используешь phpmyadmin , который считает эти комментарии за ошибки. Удали все комментарии в запросе (они маркированы значком /* ). На всяких случай щас сам удалю все эти комменты из дампа в архиве.
February 23rd, 2009 at 12:55 pm
привет! с праздником тебя!
вопрос: а как выводить деньги с бигфиша?
March 22nd, 2009 at 12:32 pm
привет, с бигфиша я вывожу деньги ваером в фин сервис epayservice оттуда на карту epassport . А дальше с картой в любой банкомат. Но снимать лучше баксы, так как рублями сконвертится по невыгодному курсу Визы. Можно найти обменники, где можно поменять с меньшими потерями.
April 5th, 2009 at 7:34 am
А как насчет доменов и хостинга? Регистрировать у российских регистраторов можно?
April 25th, 2009 at 9:07 am
отличный блог!
тоже установил свой сайт bigfishgames - не в курсе как к нему прикрутить google analytics? заранее спасибо!
кстати, если какой способ сделать обмен линками на их сайте?
удачи!
April 25th, 2009 at 9:44 am
Поставить код аналитикса нужно в файлах page.html page_play.html перед тегом Эти файлы находятся в папке templates/{темплейт, который вы используете} У меня это templates/default
Способ сделать страницу обмена ссылками конечно есть: нужно разобраться, как работает их движок, и допрограммировать нужные фитчи. Но ихмо разбираться в чужом коде, это морока, поэтому я стараюсь все писать сам. В своем хозяйстве гораздо лучше проводить всякие достройки.
April 25th, 2009 at 8:25 pm
в футере же есть место, которое можно даже в админке поменять. в общем, я готов.
спасибо за аналитикс - завтра установлю!
удачи!
April 29th, 2009 at 5:26 pm
Здравствуйте, Админ. Вы хоть скажите, как вы примерно хоть поднимали сайт в выдаче гугла?
May 8th, 2009 at 1:43 pm
Зарегистрировалась по Вашей ссылке на бигфише.
Загрузила Ваш парсер на апач, в ошибку вывалился
Fatal error: Call to undefined function curl_init() in Z:\home\bfg.ru\www\bfgparser.php on line 179
Загрузила на сервер и тут не айс
Warning: Invalid argument supplied for foreach() in /home/murkas/www/game.triru.ru/html/bfgparser.php on line 64
Не подскажете, что за зверь такой?
А то у меня знания php хромают на две ноги.
May 29th, 2009 at 1:09 pm
кстати, а если способ с помощью этого xml “наполнить” wordpress блог?
June 17th, 2009 at 9:23 am
поднимать сайт нужно с помощь поисковой оптимизации, в инете полно инфы на эту тему. Главный совет - добывайте линки!
по поводу вордпресса
http://wordpress.org/extend/plugins/bigfishgames-syndicate/
June 17th, 2009 at 9:26 am
Fatal error: Call to undefined function curl_init() in Z:\home\bfg.ru\www\bfgparser.php on line 179
курл не работает на сервере, это уже вопросы к хостеру
а пхп нужно изучать ибо это скрипт - всего лишь нужный кусок, который много где можно применить, но не более чем кусок кода
July 1st, 2009 at 3:41 pm
Как использовать этот плагин. Установил его на ворд пресс, а ума ему не дам. Что там делать нужно? По всему инету не одной инфы по нему нет.
http://wordpress.org/extend/plugins/bigfishgames-syndicate/
December 15th, 2009 at 2:55 pm
Привет,
Тоже интересно, можно ли с помощью этого xml наполнить Joomla?