Вы не зашли.
Главная » PHP » Парсер, ошибка Error 400 Bad request
#1. Влад23 Off (0)
Участник
2015.05.13 10:10
Код:
span style="color: #0000BB"><?phpif ( $xfieldsdata['pleer-all'] != '' ) { $xfield_data3 = $xfieldsdata['pleer-all']; }$sss = $xfield_data3;$sss = str_replace("<iframe src=","",$sss);$sss = str_replace("frameborder=\"0\"","",$sss);$sss = str_replace("scrolling=\"no\">","",$sss);$sss = str_replace("width=\"510\"","",$sss); $sss = str_replace("height=\"400\"","",$sss);$sss = str_replace("\"","",$sss);//echo $sss; - В этой переменной у меня получается адрес: http://flashservice.xvideos.com/embedframe/9866251 $ch = curl_init($sss); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); $out = curl_exec($ch); curl_close($ch); print $out; ?>
И еще надпись ,если ее переводить, то неверный запрос от браузера. Как то так. В чем может быть проблема ,какой нужно заголовок отправлять верным ? Вот такой у меня проблема..
Отредактировано Влад23 (2015.05.13 11:11)
#2. Gemorroj Off (107)
Administrator
2015.05.13 19:07
Код:
$out = curl_exec($ch);
if (false === $out) {
var_dump(curl_error($ch));
}
посмотри детальнее что за ошибка
#3. Влад23 Off (0)
Участник
2015.05.13 20:08
Вот такое:

400 Bad request

Your browser sent an invalid request. bool(false)
#4. Gemorroj Off (107)
Administrator
2015.05.13 22:10
вероятно ты что-то не так описываешь.
конкретно код с curl рабочий.
#5. Влад23 Off (0)
Участник
2015.05.13 23:11
Возможно вот и хрен его пойми ) но помню был у меня рабочий парсер. Наверно нужн реферер передавать, защита может на стороне домена
Отредактировано Влад23 (2015.05.13 23:11)
#6. Gemorroj Off (107)
Administrator
2015.05.14 10:10
врядли. запустил код у себя - получил их страницу нормально.
#7. Влад23 Off (0)
Участник
2015.05.14 14:02
Код:
span style="color: #0000BB"><?php $ch = curl_init('http://flashservice.xvideos.com/embedframe/9866251'); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); $out = curl_exec($ch); curl_close($ch); print $out; ?>
Добавлено спустя   3 минуты  4 секунды:
ну да так у меня тоже работает... А что же тогда, что за хуйня....
Отредактировано Влад23 (2015.05.14 14:02)
#8. Gemorroj Off (107)
Administrator
2015.05.14 14:02
ну значит проблема в коде выше или ниже.
#9. Влад23 Off (0)
Участник
2015.05.14 15:03
Да точно ошибка была тут


Код:
$sss = $xfield_data3;
$sss = str_replace("<iframe src=","",$sss);
$sss = str_replace("frameborder=\"0\"","",$sss);
$sss = str_replace("scrolling=\"no\">","",$sss);
$sss = str_replace("width=\"510\"","",$sss);
$sss = str_replace("height=\"400\"","",$sss);
$sss = str_replace("\"","",$sss); // это добавил
$sss = str_replace(" ","",$sss); // это
$sss = str_replace("</iframe>","",$sss); // и это
 
 
 
 
echo $sss;
Иначе фрейм обрезался, и выдёргивалась ссылка ,но закрывающий тег фрейма нет, в исходном коде выходило так:
Код:
http://flashservice.xvideos.com/embedframe/3662145</iframe>
Отредактировано Влад23 (2015.05.14 15:03)
#10. Влад23 Off (0)
Участник
2015.05.14 16:04
Я написал свой первый модуль парсер для dle cms с кешированием ))) Выдёргивания ембед кода с адалт туба.


Код:
span style="color: #0000BB"><?php if(!defined('DATALIFEENGINE')){ die("Hacking attempt!");}include ('engine/api/api.class.php'); if ( $xfieldsdata['pleer-all'] != '' ) { $xfield_data3 = $xfieldsdata['pleer-all']; }$xfield_data3 = str_replace("<iframe src=","",$xfield_data3);$xfield_data3 = str_replace("frameborder=\"0\"","",$xfield_data3);$xfield_data3 = str_replace("scrolling=\"no\">","",$xfield_data3);$xfield_data3 = str_replace("width=\"510\"","",$xfield_data3); $xfield_data3 = str_replace("height=\"400\"","",$xfield_data3);$xfield_data3 = str_replace("\"","",$xfield_data3); // это добавил$xfield_data3 = str_replace(" ","",$xfield_data3); // это$xfield_data3 = str_replace("</iframe>","",$xfield_data3); // и это $ch = curl_init($xfield_data3); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false); curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false); $out = curl_exec($ch); curl_close($ch); $frame = $out; $frame = str_replace("<html>","",$frame); $frame = str_replace("<head>","",$frame); $frame = str_replace("<title>Xvideos Embed</title>","",$frame); $frame = str_replace("</head>","",$frame); $frame = str_replace("<style>","<!--",$frame); $frame = str_replace("</style>","-->",$frame); $frame = str_replace("<body>","",$frame); $frame = str_replace("</body>","",$frame); $frame = str_replace("</html>","",$frame); $dle_api->save_to_cache ( "frame", $frame);print $frame;?><!--[xfvalue_pleer-all] этот комментарий с фреймом, обязателен. Сайт донор как то отслеживает, и запрещает показ видео если отсутствует фрейм... -->
Добавлено спустя   6 минут  19 секунд:
Короче в дле есть дополнительные поля, туда копируем с сайта донора его предлагаемые iframe коды, в шаблоне они выводятся этим тегом [xfvalue_pleer-all]. Далее я разрешил в tpl файлах, выполнение php скрипта, и в tpl прописал скрипт выше. Он короче разбирает это доп поле, выдёргивает с фрейма прямую ссылку на страницу с плеером, которая подгружается с сайта донора. Далее по ссылке убирает лишнии ненужные для меня теги, body и тп хуйню, оставляя, только эмбед код. Кеширует, записывает эмбед в кеш, и выводит в моём tpl файле чистый ембед. Далее я вписываю в index.php

Код:
header("Content-Security-Policy: default-src 'self' *.xvideos.com;
");
И всё их кликандер не работает на моем сайте. Как транслировать их видос в собственном плеере, это уже другая беда, и я бес понятия, нужно учить php которого я не знаю к сожалению
Отредактировано Влад23 (2015.05.14 16:04)
Страниц: 1
Главная
WEB
PunBB Mod v0.6.2
0.015 s