- Milyen okostelefont vegyek?
- iPhone topik
- Xiaomi 15 - kicsi telefon nagy energiával
- Realme GT Master Edition - mestermunka
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Egyszerre legnagyobb és legkisebb is a Garmin Venu X1
- Google Pixel topik
- Honor Magic5 Pro - kamerák bűvöletében
- Nem lett arányos a fogyókúra
- Samsung Galaxy A54 - türelemjáték
Új hozzászólás Aktív témák
-
Locsi
senior tag
Sziasztok. Van egy Ncore kereső, a Synology Nas-hoz de már nem igazán működik, még akkor sem, ha jól van beállítva. Azt szeretném, hogy magát a kereső plugint átalakítani, hogy azt a kulcsot is hozzá illessze az url végére, amit a torrent letöltésékor kapunk. Valahogy így néz ki, amit a dlm generál.
http://ncore.cc/torrents.php?action=download&id=xxxxxxx
és így kellene, hogy kinézzen
http://ncore.cc/torrents.php?action=download&id=xxxxxxx&key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Maga a kereső, az így néz ki, de nem tudom, hova kellene beírni, hogy helyes legyen.
<?php
class SynoDLMSearchNCore {
private $qurl = 'http://ncore.cc/torrents.php';
private $purl = 'http://ncore.cc/torrents.php?action=download&id=';
private $NCORE_COOKIE = "/tmp/ncore.cookie";
private $NCORE_LOGIN_URL = 'https://ncore.cc/login.php';
public function __construct() {
}
public function prepare($curl, $query, $username, $password) {
if (!file_exists($this->NCORE_COOKIE) && $username !== NULL && $password !== NULL) {
$this->VerifyAccount($username, $password);
}
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_USERAGENT, DOWNLOAD_STATION_USER_AGENT);
curl_setopt($curl, CURLOPT_COOKIEFILE, $this->NCORE_COOKIE);
curl_setopt($curl, CURLOPT_HEADER, TRUE);
curl_setopt($curl, CURLOPT_REFERER, $this->qurl);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_URL, $this->qurl."?miben=name&tipus=all_own&miszerint=fid&hogyan=DESC&mire=".urlencode("[###]" != $query ? $query : ""));
}
public function VerifyAccount($Username, $Password) {
$ret = FALSE;
$PostData = array('ne_leptessen_ki'=>'1',
'Submit'=>'Belépés!',
'nev'=>$Username,
'pass'=>$Password,
'set_lang'=>'hu',
'submitted'=>1,
);
$PostData = http_build_query($PostData);
$queryUrl = $this->NCORE_LOGIN_URL;
$curl = curl_init();
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_USERAGENT, DOWNLOAD_STATION_USER_AGENT);
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, $PostData);
curl_setopt($curl, CURLOPT_COOKIEJAR, $this->NCORE_COOKIE);
curl_setopt($curl, CURLOPT_HEADER, TRUE);
curl_setopt($curl, CURLOPT_REFERER, $this->NCORE_LOGIN_URL);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_URL, $queryUrl);
$LoginInfo = curl_exec($curl);
curl_close($curl);
if (FALSE != $LoginInfo && preg_match("/Set-Cookie: nick=".$Username."/iU", $LoginInfo) && file_exists($this->NCORE_COOKIE)) {
$ret = TRUE;
} else {
$ret = FALSE;
}
return $ret;
}
public function parse(&$plugin, $response) {
preg_match("/<div.*?box_torrent_all.*?>/iU", $response, $match);
$beginPos = strpos($response, $match[0]);
preg_match("/<div.*?lista_lab.*?>/iU", $response, $match);
$endPos = strpos($response, $match[0]);
$response = substr($response, $beginPos, $endPos-$beginPos);
preg_match("/<div.*\"box_torrent_all\".*>(.*?)<\/div>/isU", $response, $match);
$response = $match[1];
$res=0;
if(preg_match_all("/<div class=\"box_torrent\">(.*)<div class=\"torrent_lenyilo/siU", $response, $matches2, PREG_SET_ORDER)) {
foreach($matches2 as $match2) {
$title="Unknown title";
$download="Unknown download";
$size=0;
$datetime="1978-09-28";
$page="Default page";
$hash="Hash unknown";
$seeds=0;
$leechs=0;
$category="Unknown category";
$torrentData = $match2[1];
preg_match("/"
."<div class=\"box_alap_img\">.*<a.*<img.*alt=['\"](.*)['\"].*"
."<div class=\"torrent_txt2?\">.*<a.*href=['\"].*id=(\d+)['\"].*(title=['\"](.*)['\"].*)<nobr>(.*)<\/nobr>.*"
."box_feltoltve.*>(.*)<\/.*"
."box_meret.*>(.*)<\/.*"
."box_s.*<a.*>(\d+)<\/.*"
."box_l.*<a.*>(\d+)<\/.*"
."/isU", $torrentData, $matchDetail);
if (count($matchDetail) > 0){
$title = $this->getTitle($matchDetail);
$download = $this->qurl."?action=download&id=".$matchDetail[2];
$size = $this->getSize($matchDetail);
$datetime = $this->getDate($matchDetail);
$page = $this->qurl."?action=details&id=".$matchDetail[2];
$hash = md5($title.$download);
$seeds = $matchDetail[8];
$leechs = $matchDetail[9];
// $category = utf8_encode($matchDetail[1]);
$category = $matchDetail[1];
$plugin->addResult($title, $download, $size, $datetime, $page, $hash, $seeds, $leechs, $category);
$res++;
} else {
ob_start();
var_dump($torrentData);
file_put_contents("/tmp/dlm_parse_error_".date("YmdHis")."_".rand(100000).".txt", ob_get_clean()."\n");
}
}
}
return $res;
}
private function getTitle ($matches) {
return ("..." == substr($matches[5], -3) && trim($matches[4]) != "" ? $matches[4] : $matches[5]);
}
private function getSize ($matches) {
$size = str_replace(array("<br>", "<br />", "<br/>"), array(" "), $matches[7]);
preg_match("/(.*) (.*)/i", $size, $sizeParts);
$multiplier = 1;
switch ($sizeParts[2]){
case "TB": $multiplier *= 1024;
case "GB": $multiplier *= 1024;
case "MB": $multiplier *= 1024;
case "kB": $multiplier *= 1024; break;
}
return $sizeParts[1] * $multiplier;
}
private function getDate($matches) {
$date = $matches[6];
if(preg_match("/(\d+)-(\d+)-(\d+).*?(\d+):(\d+):(\d+)/i", $date, $matchDate)){
$date = sprintf("%04d-%02d-%02d %02d:%02d:%02d", $matchDate[1], $matchDate[2], $matchDate[3], $matchDate[4], $matchDate[5], $matchDate[6]);
}
return $date;
}
}
?>
Új hozzászólás Aktív témák
- Fujifilm X
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- gban: Ingyen kellene, de tegnapra
- Milyen okostelefont vegyek?
- Végleg lenyomta a tévét a streaming az USA-ban
- AMD GPU-k jövője - amit tudni vélünk
- Milyen billentyűzetet vegyek?
- E-roller topik
- PROHARDVER! feedback: bugok, problémák, ötletek
- One otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- Eladó Konfig Ryzen 7 7700 32GB DDR5 1TB SSD RTX5070 12GB!
- Precision 5550 15.6" 4K+ IPS érintő i7-10750H Quadro T1000 16GB 512GB NVMe ujjlolv IR kam gar
- Amazon Kindle (10. gen) eBook olvasó
- Latitude 5550 15.6" FHD IPS Ultra 5 135U 16GB 512GB NVMe magyar vbill ujjolv IR kam gar
- Gamer PC , i7 10700 , RX 6700 XT 12GB , 32GB 3200MHz , 512GB NVME , 1TB HDD
- MikroTik CCR1009-7G-1C-1S+ Cloud Router
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 16/32/64GB RAM RTX 4060Ti 8GB GAMER PC termékbeszámítással
- Akciós Windows 10 pro + Office 2019 professional plus csomag AZONNALI SZÁLLÍTÁS
- LG 65B4 - 65" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged