Выбор элемента при парсинге (cURL)

187
09 июля 2017, 14:32

Здравствуйте. Есть следующий код:

$ch = curl_init('http://example.com/');
curl_setopt($ch, CURLOPT_USERAGENT, 'S');
curl_exec($ch);
curl_close($ch);

Как выбрать, например, див с классом 'name', кто знает? Желательно, без использования библиотек, либо с phpQuery. Ну, если по-другому нельзя, то давайте с библиотеками. Буду благодарен за помощь!

Я пробовал с помощью phpQuery это сделать, но не получилось:

require 'phpQuery.php';
$text = curl_exec($ch);
phpQuery::newDocument($text);
    $new_text = pq('.name');
    echo $new_text;
phpQuery::unloadDocuments();
Answer 1

Вариант с использованием регулярных выражений, но если искать нужно несколько вхождений по разным параметрам, то возможно вам удобнее будет воспользоваться подходящей для этих целей библиотекой

<?php
$url = 'fl.ru/tu/53279/perenos-sayta-s-joomla-na-wordpress.html';
preg_match_all('~<h1[^>]*>([\w\s]+)</h1>~iu', curl($url), $arr);
echo $arr[1][0]; // Перенос сайта с joomla на wordpress

function curl($url) {
    $ua = strip_tags($_SERVER['HTTP_USER_AGENT']);
    $ch = curl_init();
    $options = [
        CURLOPT_URL => $url,
        CURLOPT_USERAGENT => $ua,
        CURLOPT_TIMEOUT => 10,
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_FOLLOWLOCATION => 1
    ];
    curl_setopt_array($ch, $options);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}
READ ALSO
Parse&#160;error: syntax&#160;error, unexpected&#160;T_DOUBLE_ARROW

Parse error: syntax error, unexpected T_DOUBLE_ARROW

В php не шарюЕсть скрипт, интересно проверить

246
Подача звукового сигнала modx revo

Подача звукового сигнала modx revo

Использую SocialTools , как на входящее сообщение сделать звуковой сигнал как в вк, я так понял, за входящее сообщение отвечает сниппет socDialogList,...

268
Выборка из массива PHP

Выборка из массива PHP

Подскажите, как правильнее всего на php сделать следующую выборку из массива:

334
Как получить все товары сразу? Vk api

Как получить все товары сразу? Vk api

Использую такой метод получения товаров, но тк вк разрешает получать за раз только 200 товаров приходится снова использовать этот же код, только...

257