Smirnof

Рейтинг
72
Регистрация
13.11.2012
Интересы
efcb2e
totamon:
а хозяин страницы вам разрешил ее код получать?

Естественно!

plattoo:
с помощью регулярных выражений различной степени сложности

например, так

Видимо сначала нужно сохранить результат в переменную и потом править?

Я не знаю как сохранять :(

Просто вставил ваш код после curl_exec($ch);

title не изменился.

Нашел готовый код но там задачи другие, пытаюсь на его основе что-нибудь изобрести

<?php
// Адрес, на который отправляем запрос
$URI = "http://www.test1.ru/home.php";

// Ссылка, которую ищем (указывать только текст ссылки)
$link = "ТРОЛОЛО";

// Инициализируем сеанс CURL
$main = curl_init( $URI );

// Если сеанс инициализирован
if( $main )
{
// Устанавливаем дополнительные опции
// Опция указывает, что результат будет записан в переменную
curl_setopt($main, CURLOPT_RETURNTRANSFER, 1);

// Выполняем запрос
$html = curl_exec( $main );

// ============================================
// ВНИМАНИЕ! ЕСЛИ КОДИРОВКА САЙТА, НА КОТОРЫЙ
// ВЫПОЛНЯЕТСЯ ЗАПРОС ОТЛИЧАЕТСЯ ОТ КОДИРОВКИ
// ДАННОГО ФАЙЛА, ПРОПУСТИТЕ ПЕРЕМЕННУЮ $html
// ЧЕРЕЗ ФУНКЦИЮ iconv()
// ============================================


// Регулярное выражение для поиска ссылки
// ============================================
// ВНИМАНИЕ! ЕСЛИ ВЫ ИСПОЛЬЗУЕТЕ КОДИРОВКУ UTF-8
// В КОНЦЕ РЕГУЛЯРНОГО ВЫРАЖЕНИЯ, ПОСЛЕ БУКВЫ "i"
// ВПИШИТЕ БУКВУ "u"
// ============================================

$link = trim( $link );

preg_match('/<a(.*)href\s*=\s*"\s*([a-z\-\_\/\.\:]*)s*"(.*)>\s*'.$link.'\s*<\s*\/\s*a>/i', $html, $found);

// Ссылка, найденная в файле
$link_found = $found[2];

// Переходим по полученной ссылке
$transition = curl_init( $link_found );

// Опция указывает, что результат будет записан в переменную
curl_setopt( $transition, CURLOPT_RETURNTRANSFER, 1 );

// Выполняем запрос
if( curl_exec( $transition ) )
{
echo "Клик по ссылке успешно выполнен";
}

// Закрываем сейчас клика по ссылке
curl_close( $transition );
}
else
{
echo "Не удалось инициализировать сеанс CURL. Возможно у вас не установлена данная библиотека.";
}

// Завершаем сеанс CURL
curl_close( $main );
?>

Я думал, что если повысить это значение, система будет работать шустрее.

Т.е. если поставить 1024M, возможен обратный эффект, так получается?

ziliboba0213, спасибо!

Этот скрипт пишет только для а

<script>
var url = document.location.href;
$.each($("#category_menu a"),function(){
if(this.href==url){
$(this).addClass('active');
}
});
</script>

для li не хочет.

В 5isp просто не получается выделить все сайты, можно выделить только 1

разархивировать через ssh с заменой unzip -man не получилось, не нашел описание команды unzip -man

Скрипт сложный для меня, механизм работы не ясен.

У меня www папка с сотней сайтов www/1.ru и т.д.

script.sh /www/1.ru /1.ru/file.html

script.sh /www/2.ru /2.ru/file.html

script.sh /www/3.ru /3.ru/file.html

получается, что нужно править данный скрипт под все сайты

Вы маг? :)

Спасибо!!!

Отправил лс, очень длинный код

В этот запрос нужно вписать то, что у вас выводится так

".$matches[2][$i]."

вместо q=".urlencode($itemtitle)."

И сам запрос

$this->url = "https://www.googleapis.com/youtube/v3/search?key={$this->config["key"]}&part=$part&order={$this->config[$nom.'sortingresults']}&maxResults={$this->config[$nom.'number']}&q=".urlencode($itemtitle)."&videoEmbeddable=true&videoSyndicated=true&type=video";

вставить в тело как в моем варианте.

Т.е. ваш код хороший но без главного поискового запроса.

А куда вставить это?

$this->url = "https://www.googleapis.com/youtube/v3/search?key={$this->config["key"]}&part=$part&order={$this->config[$nom.'sortingresults']}&maxResults={$this->config[$nom.'number']}&q=".urlencode($itemtitle)."&videoEmbeddable=true&videoSyndicated=true&type=video";

Помогите изменить $js=file_get_contents на $string=file_get_contents

Есть код, получает заголовок и ссылку со стороннего сайта.

<?php
protected function getcates($nom){
$part = "snippet";

$js=file_get_contents("сайт.ру");
if(preg_match('#push\((?<json>.*?)\);#',$js,$match))

{
$wares=json_decode($match['json'])->wares;
$html = '';
foreach ($wares as $item)
{
$itemtitle = $item->title;
$arr1 = array('XXX');
$arr2 = array('');
$itemtitle=str_replace($arr1, $arr2, $item->title);
$item->title=str_replace($arr1, $arr2, $item->title);
$itemtitle = preg_replace('/[^\p{L}0-9 \!]/iu', ' ', $itemtitle);
$block = "";
$this->url = "https://www.googleapis.com/youtube/v3/search?key={$this->config["key"]}&part=$part&order={$this->config[$nom.'sortingresults']}&maxResults={$this->config[$nom.'number']}&q=".urlencode($itemtitle)."&videoEmbeddable=true&videoSyndicated=true&type=video";
$data = $this->http(TRUE);
//var_dump($data);

foreach ($data->items as $yt) {
$block .= "

сюда поместить то, что в echo выводится так"<a href=\"".$match[1][$i]."\">".$match[2][$i]."</a><br/>";
только без echo

";
}
if(!empty($block)){
$html .= 'верхнее оформление'.$block.'нижнее оформление';
}
}
}
return $html;
}

?>

Помогите в него внедрить этот код:

<?
$string=file_get_contents("https://e-pay.tv/adverts/iframe.php?aff=101005&color=0a97fc&blocks=10&width=400&type=vertical");
preg_match_all("/<a.*?href=\"(.*?)\">.*?<h2.*?>(.*?)<\/h2>/s", $string, $match);

$n = count($match[1]);
for ($i = 0; $i < $n; $i++)

echo "<a href=\"".$match[1][$i]."\">".$match[2][$i]."</a><br/>";
?>

Нужно, чтобы в первом коде получали данные не через $js=file_get_contents; а через $string=file_get_contents; и далее по коду.

Спасибо!

p.s. готов оплатить

Всего: 235