1. Go to this page and download the library: Download vsimke/article-finder library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
vsimke / article-finder example snippets
use Vsimke\ArticleFinder\ArticleFinder;
use Vsimke\ArticleFinder\FinderParameter;
use Vsimke\ArticleFinder\Scraper\HQueryScraper;
$scraper = new HQueryScraper();
$finder = ArticleFinder::create($scraper);
$result = $finder->find([
FinderParameter::SITE => 'example.com',
FinderParameter::TITLE => 'My Article Title',
]);
if ($result !== false) {
echo $result['title']; // 'My Article Title'
echo $result['link']; // 'https://example.com/my-article-title'
echo $result['finder']; // 'www.bing.com' or 'www.google.com'
}
use Vsimke\ArticleFinder\ArticleFinder;
use Vsimke\ArticleFinder\FinderParameter;
use Vsimke\ArticleFinder\Scraper\HQueryScraper;
class ArticleOnlineChecker
{
public function __construct(private readonly ArticleFinder $finder) {}
public function check(string $site, string $title): array|false
{
return $this->finder->find([
FinderParameter::SITE => $site,
FinderParameter::TITLE => $title,
]);
}
}
// Wire it up
$checker = new ArticleOnlineChecker(
ArticleFinder::create(new HQueryScraper())
);
use GuzzleHttp\Client;
use Vsimke\ArticleFinder\Scraper\HQueryScraper;
// Custom Guzzle client (e.g. with a proxy)
$client = new Client(['proxy' => 'socks5://127.0.0.1:1080']);
$scraper = new HQueryScraper($client);
// Override User-Agent
$scraper = new HQueryScraper(config: [
'headers' => [
'User-Agent' => 'MyBot/1.0',
],
]);
use Vsimke\ArticleFinder\Finders\Finder;
class DuckDuckGoFinder extends Finder
{
public function find(array $parameters): array
{
// ... scrape DuckDuckGo ...
if ($article['link'] ?? null) {
return $article;
}
return parent::find($parameters); // delegate to next in chain
}
}
$ddg = new DuckDuckGoFinder();
$google = new GoogleArticleFinder($scraper);
$ddg->chain($google);
$finder->setFinder($ddg);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.