[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Получить данные со страницы
lola_lola
Добрый вечер. Подскажите, пожалуйста, как можно реорганизовать скрипт или есть возможность изъять данные. Суть такова, у меня есть парсер отделений одной из служб доставки. Есть API для того, чтобы можно было обратиться к нему с любого сайта. Когда я запускаю код на сервере, то всё отличненько парсится и добавляется в базу, если же посылать запрос с какого-то сайта на сервер, то с помощью file_get_contents он возвращает только строковый результат об успешном выполнение и добавляет данные не в базу сайта, а повторно перезаписывает на сервере. Происходит из-за того, что идёт выполнение функции append_department(принадлежит классу для вставки/изъятия и тд ). В общем, есть ли у кого-то идеи, как можно изъять грамотно данные и записать их в базу сайта? Огромнейшее спасибо.

Привожу код парсера и функции для взаимодействия с api

<?php
//include_once('libphp/total_function.php');
include_once('libphp/LIB/simple_html_dom.php');
include_once 'api.php';
$type=2;
delete_records($type);
$name='';
$city='';
$region='';
$adress='';
$phone='';
$work_time='';
ini_set('user_agent', 'My-Application/2.5');
$html = new simple_html_dom();
$cont = get_data("http://допустим тут ссылка на api службы доставки");
$dom = $html->load($cont);
if (!empty($dom))
foreach($dom->find('div.city-block') as $article) {
$city = trim($article->find('div.city-title', 0)->plaintext);
$city = strtolower($city);
$city = ucfirst($city);
foreach($article->find('div.city-info') as $articles){
$name = "Отделение №".trim($articles->find('div.attention-circle-violet', 0)->plaintext);
$adress = trim($articles->find('div.city-info-addr', 0)->plaintext);
if(strlen(trim($adress)))
append_department($type,$name,($city),$region,$adress,$phone,$work_time);
}
}

else {
die("Error");
}

die("OK");

// Дальше следует функция get_data и тд
}
?>


function helloAPI($apiMethodParams){
header('Content-type: text/html');
echo file_get_contents("http://localhost/delivery/delivery.php");
}

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.