PHP Curl Как вытянуть значения?

209
30 марта 2017, 23:02

Всем привет! В общем нужно вытянуть значение из (div class="yt-lockup yt-lockup-tile yt-lockup-video clearfix"
data-context-item-id="Aj0F3D_XDm0" data-visibility- tracking="CEEQ3DAYAyITCMTl0sOg-tICFUfMHQodzD4EnCj0JEDtnNz-w7vBngI=")

Нужно вытянуть значение data-context-item-id. Помогите добрые люди) Вот что пробовал....

 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL,$url);//инициализация cURL
 curl_setopt($ch,CURLOPT_TIMEOUT, 60);//максимальное время для работы функций cURL
 curl_setopt($ch,CURLOPT_VERBOSE,true);
 curl_setopt($ch,CURLOPT_ENCODING, "");//все кодировки
 curl_setopt($ch,CURLOPT_HEADER,true);//включение заголовков в вывод
 curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);//не проверять SSL сертификат
 curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false);//не проверять HOST SSL
 curl_setopt($ch,CURLOPT_COOKIEJAR, 'youtube.txt');//сохранить куки в файл
 curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);//следования любому заголовку
 curl_setopt($ch,CURLOPT_MAXREDIRS,30);//максимальное количество принимаемых редиректов
 curl_setopt($ch, CURLOPT_RETURNTRANSFER,true );
 $a = curl_exec($ch);
  //отслеживание ошибок
  if($a === FALSE){
  echo "cURL Error: " .curl_error($ch);
   }
   $html = new simple_html_dom();
   $html->load($a,true,false);
   $links = array();
   $imgs = array();
   foreach($html->find("div.yt-lockup yt-lockup-tile yt-lockup-video clearfix ")as $s){
   $links[] = $s->data-context-item-id;

}

Answer 1

Во первых лучше использовать какую нибудь готовую либу типа guzzle чтобы не мучаться с curl (хотя она тоже использует его внутри)

Во вторых проще (ну мне по крайней мере) регуляркой типа

preg_match('/div class="yt-lockup yt-lockup-tile yt-lockup-video clearfix"\s+data-context-item-id="(?<value>[^"]+)/s', $content, $matches);
$value = $matches['value'];
READ ALSO
MYSQL LIKE REGEXP

MYSQL LIKE REGEXP

Пытаюсь сделать проверку на совпадения в БДПривожу к единому виду переменную для проверки -

240
Передача исключений выше в программу

Передача исключений выше в программу

Добрый день! Используется связка php+mssqlВ базе есть процедура с блоком try catch

181
Проблема с ответом cURL

Проблема с ответом cURL

Приветствую, коллеги

233