edit: phpdoc stuff
add: pChart lib - no more usage of google api. There has to be the wp-content/cache writable for images add: test-folder for later use new: class agents, new isBot-functionality within this class, old function is deprecated, uses an ini-file with botnames
Dieser Commit ist enthalten in:
Ursprung
187cc396c4
Commit
86383bb510
53 geänderte Dateien mit 26319 neuen und 380 gelöschten Zeilen
207
includes/class.agents.php
Normale Datei
207
includes/class.agents.php
Normale Datei
|
|
@ -0,0 +1,207 @@
|
|||
<?php
|
||||
/**
|
||||
* File: class.agents.php
|
||||
*
|
||||
* @package SemmelstatzR
|
||||
* @version $Rev$
|
||||
* @since 1.0.0 Beta
|
||||
* @author SEM-Team
|
||||
* @copyright (c)2011 SEM-Team
|
||||
* @link http://sourceforge.net/projects/semmelstatz/
|
||||
* @license http://www.gnu.org/licenses/gpl-3.0.html
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* $Id$
|
||||
*
|
||||
*/
|
||||
|
||||
class Agents {
|
||||
|
||||
private $_sAgent;
|
||||
|
||||
private $_aBots = array(
|
||||
'aipbot',
|
||||
'amfibibot',
|
||||
'appie',
|
||||
'ask jeeves/teoma',
|
||||
'aspseek',
|
||||
'axadine',
|
||||
'baiduspider',
|
||||
'becomebot',
|
||||
'blogcorpuscrawler',
|
||||
'blogpulse',
|
||||
'blogsnowbot',
|
||||
'boitho.com',
|
||||
'bruinbot',
|
||||
'cerberian',
|
||||
'cfnetwork',
|
||||
'check_http',
|
||||
'cipinetbot',
|
||||
'claymont',
|
||||
'cometsearch@cometsystems.com',
|
||||
'converacrawler',
|
||||
'cydralspider',
|
||||
'digger',
|
||||
'es.net_crawler',
|
||||
'eventax',
|
||||
'everyfeed-spider',
|
||||
'exabot@exava.com',
|
||||
'faxobot',
|
||||
'findlinks',
|
||||
'fireball',
|
||||
'francis',
|
||||
'gaisbot',
|
||||
'gamekitbot',
|
||||
'gazz@nttr.co.jp',
|
||||
'geonabot',
|
||||
'getrax crawler',
|
||||
'gigabot',
|
||||
'girafa.com',
|
||||
'goforitbot',
|
||||
'googlebot',
|
||||
'grub-client',
|
||||
'holmes',
|
||||
'houxoucrawler',
|
||||
'http://www.almaden.ibm.com/cs/crawler',
|
||||
'http://www.istarthere.com',
|
||||
'http://www.relevantnoise.com',
|
||||
'httrack ?',
|
||||
'ia_archiver',
|
||||
'ichiro',
|
||||
'iltrovatore-setaccio',
|
||||
'inelabot',
|
||||
'infoseek',
|
||||
'inktomi.com',
|
||||
'irlbot',
|
||||
'jetbot',
|
||||
'jobspider_ba',
|
||||
'kazoombot',
|
||||
'larbin',
|
||||
'libwww',
|
||||
'linkwalker',
|
||||
'lmspider',
|
||||
'mackster',
|
||||
'mediapartners-google',
|
||||
'microsoft url control',
|
||||
'mj12bot',
|
||||
'moreoverbot',
|
||||
'mozdex',
|
||||
'msnbot',
|
||||
'msrbot',
|
||||
'naverbot',
|
||||
'netresearchserver',
|
||||
'ng/2.0',
|
||||
'np(bot)',
|
||||
'nutch',
|
||||
'objectssearch',
|
||||
'ocelli',
|
||||
'omniexplorer_bot',
|
||||
'openbot',
|
||||
'overture',
|
||||
'patwebbot',
|
||||
'php',
|
||||
'phpdig',
|
||||
'pilgrim html-crawler',
|
||||
'pipeliner',
|
||||
'pompos',
|
||||
'psbot',
|
||||
'python-urllib',
|
||||
'quepasacreep',
|
||||
'robozilla',
|
||||
'rpt-httpclient',
|
||||
'savvybot',
|
||||
'scooter',
|
||||
'search.ch',
|
||||
'seekbot',
|
||||
'semager',
|
||||
'seznambot',
|
||||
'sherlock',
|
||||
'shelob',
|
||||
'sitesearch',
|
||||
'snapbot',
|
||||
'snappreviewbot',
|
||||
'speedy spider',
|
||||
'sphere scout',
|
||||
'stackrambler',
|
||||
'steeler',
|
||||
'surveybot',
|
||||
'szukacz',
|
||||
'technoratibot',
|
||||
'telnet',
|
||||
'themiragorobot',
|
||||
'thesubot',
|
||||
'thumbshots-de-bot',
|
||||
'topicblogs',
|
||||
'turnitinbot',
|
||||
'tutorgigbot',
|
||||
'tutorial crawler',
|
||||
'twiceler',
|
||||
'vagabondo',
|
||||
'versus',
|
||||
'voilabot',
|
||||
'w3c_css_validator',
|
||||
'w3c_validator',
|
||||
'w3c-checklink',
|
||||
'web downloader',
|
||||
'webcopier',
|
||||
'webcrawler',
|
||||
'webfilter robot',
|
||||
'west wind internet protocols',
|
||||
'wget',
|
||||
'wwweasel robot',
|
||||
'wwwster',
|
||||
'xaldon webspider',
|
||||
'xenu',
|
||||
'yahoo! slurp',
|
||||
'yahoofeedseeker',
|
||||
'yahoo-mmcrawler',
|
||||
'zao',
|
||||
'zipppbot',
|
||||
'zyborg',
|
||||
);
|
||||
|
||||
public function __construct($sAgent = null) {
|
||||
if(!is_null($sAgent)) {
|
||||
$this->_sAgent = $sAgent;
|
||||
}
|
||||
$this->_getIniFile();
|
||||
}
|
||||
|
||||
public function isBot($sAgent = null) {
|
||||
if(is_null($sAgent) && empty($this->_sAgent)) return false;
|
||||
$sAgent = (is_null($sAgent))?$this->_sAgent:$sAgent;
|
||||
|
||||
foreach($this->_aBots as $bot) {
|
||||
if(stristr($sAgent, $bot) !== false) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private function _getIniFile($sFile = null) {
|
||||
if(is_null($sFile)) $sFile = dirname(__FILE__)."/data/uas_20110628-02.ini"; // default ini
|
||||
|
||||
if(is_file($sFile) && is_readable($sFile)) {
|
||||
$aTmpIni = parse_ini_file($sFile, true);
|
||||
$this->_aBots = array();
|
||||
foreach($aTmpIni['robots'] as $value) {
|
||||
$this->_aBots[] = $value[2];
|
||||
}
|
||||
//print_r($this->_aBots);
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
Laden …
Tabelle hinzufügen
Einen Link hinzufügen
In neuem Issue referenzieren