Merge branch '20260116'
This commit is contained in:
@@ -2,10 +2,12 @@
|
||||
|
||||
namespace app\common\service;
|
||||
|
||||
use app\common\utils\crawl\service\UsedCarCrawlSingle;
|
||||
use app\common\validate\UsedCarValidate;
|
||||
use app\common\traits\crud\CrudServiceTrait;
|
||||
use app\common\model\UsedCar;
|
||||
use GuzzleHttp\Client;
|
||||
use GuzzleHttp\Exception\GuzzleException;
|
||||
use support\exception\BusinessException;
|
||||
use support\Log;
|
||||
use support\Request;
|
||||
@@ -422,4 +424,50 @@ class UsedCarService
|
||||
|
||||
return $path;
|
||||
}
|
||||
|
||||
/**
|
||||
* 选择车辆抓取方式
|
||||
* @param string $url
|
||||
*/
|
||||
public function selectCraw(string $url){
|
||||
$usedCarCrawl = new UsedCarCrawlSingle();
|
||||
switch (true){
|
||||
case str_contains($url,'dongchedi.com'): //懂车帝pc端
|
||||
$info = $usedCarCrawl->crawlCar($url);
|
||||
break;
|
||||
case str_contains($url,'dcdapp.com'): //懂车帝移动端
|
||||
$finalUrl = $usedCarCrawl->getPcUrl($url); //获取pc端页面链接
|
||||
if(empty($finalUrl)){
|
||||
throw new \Exception('链接解析错误');
|
||||
}
|
||||
$info = $usedCarCrawl->crawlCar($finalUrl);
|
||||
break;
|
||||
case str_contains($url,'t.zijieimg.com'): //懂车帝移动端分享链接
|
||||
$finalUrl = $usedCarCrawl->getFinaUrl($url); //解析抖音短链,并获取pc端页面链接
|
||||
if(empty($finalUrl)){
|
||||
throw new \Exception('链接解析错误');
|
||||
}
|
||||
$info = $usedCarCrawl->crawlCar($finalUrl);
|
||||
break;
|
||||
case str_contains($url,'www.che168.com/dealer'): //汽车之家
|
||||
$info = $usedCarCrawl->crawlChe168Car($url);
|
||||
break;
|
||||
case str_contains($url,'www.che168.com/home?infoid='): //汽车之家pc端链接转换
|
||||
$url = $usedCarCrawl->getChe168UrlByPc($url);
|
||||
$info = $usedCarCrawl->crawlChe168Car($url);
|
||||
break;
|
||||
case str_contains($url,'wap.che168.com/dealer'): //汽车之家移动端链接
|
||||
$finalUrl = $usedCarCrawl->getChe168UrlByMobile($url);
|
||||
$info = $usedCarCrawl->crawlChe168Car($finalUrl);
|
||||
break;
|
||||
case str_contains($url,'comm.app.autohome.com.cn'): //汽车之家移动端链接
|
||||
$finalUrl = $usedCarCrawl->get168FinaUrl($url);
|
||||
$info = $usedCarCrawl->crawlChe168Car($finalUrl);
|
||||
break;
|
||||
default:
|
||||
Log::info('未知链接:'.$url);
|
||||
throw new \Exception('加紧开发中');
|
||||
}
|
||||
return $info;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user