修复火箭工单过盾同步问题
This commit is contained in:
@@ -5,10 +5,14 @@ declare(strict_types=1);
|
||||
namespace app\common\library\scrm\spider;
|
||||
|
||||
use app\common\library\scrm\AbstractScrmSpider;
|
||||
use app\common\library\scrm\AntiBotConfigBuilder;
|
||||
use app\common\library\scrm\UnifiedScrmData;
|
||||
use app\common\service\SplitPageUrlResolver;
|
||||
|
||||
/**
|
||||
* 火箭云控蜘蛛
|
||||
* 火箭云控蜘蛛(Real Browser + CF 过盾 + 密码弹窗 + API 拦截)
|
||||
*
|
||||
* 短链 s.url99.me → 长链 *.url66.me/gds?link=(长链域名动态,不写死)
|
||||
*/
|
||||
class HuojianSpider extends AbstractScrmSpider
|
||||
{
|
||||
@@ -22,6 +26,9 @@ class HuojianSpider extends AbstractScrmSpider
|
||||
|
||||
private UnifiedScrmData $unifiedData;
|
||||
|
||||
/** HTTP 预解析落地 URL(短链 CF 时可能失败,仅作 hint) */
|
||||
private string $landingUrlHint = '';
|
||||
|
||||
public function __construct(
|
||||
string $pageUrl,
|
||||
string $account = '',
|
||||
@@ -32,11 +39,14 @@ class HuojianSpider extends AbstractScrmSpider
|
||||
$this->pageUrl = $pageUrl;
|
||||
$this->account = $account;
|
||||
$this->password = $password;
|
||||
$this->landingUrlHint = SplitPageUrlResolver::resolveFinalUrl($pageUrl);
|
||||
$this->unifiedData = new UnifiedScrmData();
|
||||
}
|
||||
|
||||
protected function getSpiderConfig(): array
|
||||
{
|
||||
$antiBot = AntiBotConfigBuilder::build('huojian', $this->pageUrl, $this->landingUrlHint);
|
||||
|
||||
return [
|
||||
'pageUrl' => $this->pageUrl,
|
||||
'listApi' => self::API_LIST,
|
||||
@@ -48,6 +58,7 @@ class HuojianSpider extends AbstractScrmSpider
|
||||
['type' => 'vue_click', 'selector' => '.el-message-box__btns .el-button--primary'],
|
||||
['type' => 'wait', 'ms' => 2000],
|
||||
],
|
||||
'antiBot' => $antiBot,
|
||||
];
|
||||
}
|
||||
|
||||
@@ -84,6 +95,7 @@ class HuojianSpider extends AbstractScrmSpider
|
||||
}
|
||||
}
|
||||
$unifiedData->total = $count;
|
||||
|
||||
return $unifiedData;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user