<?php use Doctrine\Common\Cache\ArrayCache; use pdt256\vbscraper\Lib\DoctrineHelper; use pdt256\vbscraper\Service\BvbInfoScraper; use pdt256\vbscraper\Service\Import\MatchImporter; error_reporting(E_ALL); date_default_timezone_set('UTC'); ini_set('memory_limit', '256M'); require_once __DIR__ . '/../vendor/autoload.php'; $doctrine = new DoctrineHelper(new ArrayCache()); $doctrine->setup(['driver' => 'pdo_sqlite', 'path' => __DIR__ . '/../data/db.sqlite']); $doctrine->clearDB(); class LiveImport { public $bvbBase = 'http://bvbinfo.com/'; /** @var MatchImporter */ private $matchImporter; public function __construct(DoctrineHelper $doctrine) { $this->matchImporter = new MatchImporter($doctrine->repository()->getMatch(), $doctrine->repository()->getTeam(), $doctrine->repository()->getPlayer()); } public function execute() { $content = file_get_contents($this->bvbBase . 'season.asp'); $seasonUrls = BvbInfoScraper::getSeasonUrls($content); foreach (array_reverse($seasonUrls) as $seasonUrl) { $seasonUrl = $this->bvbBase . $seasonUrl; $this->importSeason($seasonUrl); } }
private function getConnection() { $this->doctrineHelper = new DoctrineHelper(new ArrayCache()); $this->doctrineHelper->setup(['driver' => 'pdo_sqlite', 'memory' => true]); $this->entityManager = $this->doctrineHelper->getEntityManager(); }