Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.02.2016, 12:36   #1
PHP_DELETANT
Пользователь
 
Регистрация: 31.01.2016
Сообщений: 31
По умолчанию почему прсер работает на одних сайтах и не работает на других

почему парсер работает на одном сайте и не работает для другого сайта ?
подключение к сайту с которого парсим
(на этом сайте не работает)
Код:
<?php 
define(URL, 		'https://www.12bet.uk/en-gb/sportsbook'); //адрес сайта который будем парсить

//настройки подключения к БД чтобы записывать результаты парсинга
define(DB_HOST, 	'*******');
define(DB_DATABASE, '******');
define(DB_USERNAME, '*****');
define(DB_PASSWORD, '*****');

//настройки скрипта
define(SAVEPATH, 			'img/'); //папка сохранения картинок
define(BASEPATH, 			'library'); //папка с php библиотеками
define(COOKIE_PATH, 		realpath(dirname(__FILE__).'/../')); //куда сохранять куки для авторизации

error_reporting(E_ALL); 
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);



}
парсер
Код:
<?php 

$start = microtime(true);

set_include_path(get_include_path().PATH_SEPARATOR.'library/'); 
set_include_path(get_include_path().PATH_SEPARATOR.'phpQuery/'); 

require('config.php');

function __autoload( $className ) {require_once( "$className.php" );}


echo "<br>".date('H:i:s')." Начинаем парсинг ".URL;

$pageText =new Curl();
$page=$pageText->get_page(URL);

$cat_page = phpQuery::newDocument($page); 

$paginator = $cat_page->find('div.branch');
print($paginator);

	

?>
И работает на сайте следующем
подключение к сайту с которого парсим

Код:
<?php 
define(URL, 		'http://www.sport-express.ru/football/'); //адрес сайта который будем парситьhttp://www.sport-express.ru/live/yesterday/

//настройки подключения к БД чтобы записывать результаты парсинга
define(DB_HOST, 	'*******');
define(DB_DATABASE, '******');
define(DB_USERNAME, '*****');
define(DB_PASSWORD, '*****');

//настройки скрипта
define(SAVEPATH, 			'img/'); //папка сохранения картинок
define(BASEPATH, 			'library'); //папка с php библиотеками
define(COOKIE_PATH, 		realpath(dirname(__FILE__).'/../')); //куда сохранять куки для авторизации

error_reporting(E_ALL); 
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);



}
парсер
Код:
<?php 

$start = microtime(true);

set_include_path(get_include_path().PATH_SEPARATOR.'library/'); 
set_include_path(get_include_path().PATH_SEPARATOR.'phpQuery/'); 

require('config.php');

function __autoload( $className ) {require_once( "$className.php" );}


echo "<br>".date('H:i:s')." Начинаем парсинг ".URL;

$pageText =new Curl();
$page=$pageText->get_page(URL);

$cat_page = phpQuery::newDocument($page); 

$paginator = $cat_page->find('div.football.mb_1);
print($paginator);

	

?>
В обоих случаях пытаемся спарсить результаты матчей пока без записи в базу данных
и как сделать что бы парсер запускался каждые 30 мин а не при обновлении страницы ?

Последний раз редактировалось PHP_DELETANT; 12.02.2016 в 12:42.
PHP_DELETANT вне форума Ответить с цитированием
Старый 12.02.2016, 12:50   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
и как сделать что бы парсер запускался каждые 30 мин а не при обновлении страницы ?
Запускать его чем-нибудь. cron в линуксе например.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 12.02.2016, 13:08   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

1 сайт скорее всего посылает нафиг, с браузера то зайдите.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.02.2016, 13:15   #4
PHP_DELETANT
Пользователь
 
Регистрация: 31.01.2016
Сообщений: 31
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
1 сайт скорее всего посылает нафиг, с браузера то зайдите.
ага, заходить с браузера и копипастом в базу переносить
PHP_DELETANT вне форума Ответить с цитированием
Старый 12.02.2016, 13:45   #5
PHP_DELETANT
Пользователь
 
Регистрация: 31.01.2016
Сообщений: 31
По умолчанию

ок может сайт геморойный и мой хостниг не пускает.

можно было бы использовать сайт на котором раотает парсер, но нужны англоязычные значения, и тут вопрос с местным специалистам: мы спарсили допустим, результат матча, Спартак Динамо, но нам нужны англоязычные названия, если поступить так :

Брать значение сначало одной команды Спартак сравнивать его с заранее составленной группой значений (названия всех команд) и если
$team = Спартак
то записываем в базу значение Spartak
потом второй
если
$team = Динамо
то записываем в базу значение Dinamo

на сколько такой вариант использовать рационально ?
или есть какой то еще способ преобразования, на англоязычные названия ?
PHP_DELETANT вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
кто может объяснить,почему на моем компе программа работает на других нет?код в Delphi Symba Общие вопросы Delphi 1 24.03.2011 01:03
Почему программа на С++ не работает с локальным описанием массива, но работает с глобальным? >>STINGER<< Помощь студентам 4 08.03.2011 09:56
почему интеренет на Xp не работает, а на семерке работает Lenura Windows 18 04.10.2010 12:04
Скомпилированая программа на одних компах запускается, а на других выдает ошибку? Velross Помощь студентам 1 14.01.2010 21:05
Почему не работает тег align=right?valign работает а align нет! aviv HTML и CSS 5 21.01.2009 17:46