애드블럭을 제거하거나 잠시 꺼주세요.
※ 자료설명 ※
뽐뿌 및 클리앙등 인터넷상의 모든 링크프라이스 링크를 자신의 링크프라이스 AID 코드로 우회합니다.
링크를 통해 자신이 구입하는 커미션 수익을 본인의 링크프라이스 계정으로 적립하는 스크립트 및 php 소스입니다.
기능
알려진 커뮤니티의 링크프라이스 링크 및 상품소개 링크를 자신의 링크프라이스 계정으로 적립하게 해줍니다.
링크프라이스 링크의 성공여부를 확인할 수 있습니다. (적립여부를 바로 확인가능)
자동으로 상품 페이지로 이동합니다.
https://youtu.be/ivoTTcBz1QY
준비물
1. 링크프라이스 계정 및 AID 코드 (수익 적립용)
2. nas 등 url이 접근이 가능한 웹서버 (우회용)
3. temparmonkey 익스텐션 (링크 변환용)
Tampermonkey 공홈에서 각 브라우저별 익스텐션을 설치하시고 아래 스크립트를 추가하시면 됩니다.
1. 우회용 php 소스 (linkprice.php)
아래 소스를 linkprice.php 파일로 저장합니다.
소스의 $linkprice_aid ="" 항목을 자신의 링크프라이스 aid 코드로 수정합니다.
php은 php 7.2이상, curl 가능환경에서 권장합니다.
<html>
<head>
<!--Import Google Icon Font-->
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<!-- Compiled and minified CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
</head>
<body>
<!-- Compiled and minified JavaScript -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
<?php
function request($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
$linkprice_aid = $_GET['linkprice_aid'] ?? "";
if(!$linkprice_aid) {
$linkprice_aid = '자신의 코드';
}
$mall_url = $_GET['url'] ?? '';
if($linkprice_aid && $mall_url) {
$changeUrl = 'http://api.linkprice.com/ci/service/custom_link_xml?a_id=';
$linkCall = $changeUrl.$linkprice_aid.'&url='.urlencode($mall_url).'&mode=json';
$buff = request($linkCall);
$json_list= json_decode($buff, true);
if(isset($json_list['result'])) {
$linkP_result = $json_list['result'];
}
if(isset($json_list['url'])) {
$linkP_url = $json_list['url'];
}
}
?>
<div class="container">
<div class="row">
<div class="section" style="width:100%; word-break:break-all;word-wrap:break-word;">
<h5><i class="material-icons">add</i> 기본정보</h5>
<p>접속자의 링크프라이스 AID <br/><?php echo $linkprice_aid;?></p>
<p>쇼핑몰 링크 <br/><?php echo $mall_url;?></p>
<p>링크프라이스 요청링크 <br/><?php echo $linkCall;?></p>
<p>링크프라이스 응답 <br/><?php echo $buff;?></p>
</div>
<div class="divider"></div>
<div class="section" style="width:100%; word-break:break-all;word-wrap:break-word;">
<h5><i class="material-icons">monetization_on</i> 결과</h5>
<?php
if($linkP_result == 'S'){
$linkP_url = $json_list['url'];
?>
<p>구매시 링크프라이스 적립 가능</p>
<a href='<?php echo $linkP_url;?>' class="collection-item active"><?php echo $linkP_url;?></a>
<?php
} else if(!isset($linkP_result) || $linkP_result != 'S') {
?>
<p>구매시 링크프라이스 적립 불가</p>
<a href='<?php echo $mall_url;?>' class="collection-item active"><?php echo $mall_url;?></a>
<?php
}
?>
</div>
</div>
</div>
</body>
</html>
<head>
<!--Import Google Icon Font-->
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<!-- Compiled and minified CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
</head>
<body>
<!-- Compiled and minified JavaScript -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
<?php
function request($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
$linkprice_aid = $_GET['linkprice_aid'] ?? "";
if(!$linkprice_aid) {
$linkprice_aid = '자신의 코드';
}
$mall_url = $_GET['url'] ?? '';
if($linkprice_aid && $mall_url) {
$changeUrl = 'http://api.linkprice.com/ci/service/custom_link_xml?a_id=';
$linkCall = $changeUrl.$linkprice_aid.'&url='.urlencode($mall_url).'&mode=json';
$buff = request($linkCall);
$json_list= json_decode($buff, true);
if(isset($json_list['result'])) {
$linkP_result = $json_list['result'];
}
if(isset($json_list['url'])) {
$linkP_url = $json_list['url'];
}
}
?>
<div class="container">
<div class="row">
<div class="section" style="width:100%; word-break:break-all;word-wrap:break-word;">
<h5><i class="material-icons">add</i> 기본정보</h5>
<p>접속자의 링크프라이스 AID <br/><?php echo $linkprice_aid;?></p>
<p>쇼핑몰 링크 <br/><?php echo $mall_url;?></p>
<p>링크프라이스 요청링크 <br/><?php echo $linkCall;?></p>
<p>링크프라이스 응답 <br/><?php echo $buff;?></p>
</div>
<div class="divider"></div>
<div class="section" style="width:100%; word-break:break-all;word-wrap:break-word;">
<h5><i class="material-icons">monetization_on</i> 결과</h5>
<?php
if($linkP_result == 'S'){
$linkP_url = $json_list['url'];
?>
<p>구매시 링크프라이스 적립 가능</p>
<a href='<?php echo $linkP_url;?>' class="collection-item active"><?php echo $linkP_url;?></a>
<?php
} else if(!isset($linkP_result) || $linkP_result != 'S') {
?>
<p>구매시 링크프라이스 적립 불가</p>
<a href='<?php echo $mall_url;?>' class="collection-item active"><?php echo $mall_url;?></a>
<?php
}
?>
</div>
</div>
</div>
</body>
</html>
2. Tampermonkey 용 스크립트
아래 스크립트를 Tampermonkey 에 저장합니다.
myUrl 항목을 자신의 웹주소로 변경합니다.
// ==UserScript==
// @name Linkprice Paralyzer
// @namespace
// @version 0.4.1
// @description Linkprice Paralyzer
// @author You
// @match *://*/*
// @grant none
// @date 2021.3.23
// ==/UserScript==
let myUrl = 'http://193.123.238.64/linkprice.php';
let linkprice_aid = 'A100019377';
let current_page = document.location.href;
let linkprice_own_code = current_page.match(/A\d{9}/);
// location 방식 커뮤니티 처리 코드
if (linkprice_own_code && linkprice_aid != linkprice_own_code && current_page.match(/click.linkprice.com\/click.php/)) {
alert(linkprice_own_code + '가 본인코드(' + linkprice_aid +')가 아닙니다.\n점검 화면으로 이동합니다.');
let regex = /tu=(.*)/;
let tu = current_page.match(regex);
const requstUrl = myUrl+'?url=' + encodeURIComponent(tu[1]) + '&linkprice_aid=' + linkprice_aid + '&referer=' + encodeURIComponent(current_page);
location.href = requstUrl;
}
// 링크
(async function() {
'use strict';
if (document.readyState === 'loading') {
await new Promise(resolve => {
document.addEventListener('DOMContentLoad', () => resolve(), { once: true });
});
}
/**
* Paralyze Linkprice.
*/
if ( current_page.match(/\.amazon./) || current_page.match(/\.google./) || current_page.match(/193\.123\.238\.64/) ) {
// 검색 및 본사이트는 제외
console.log(current_page, typeof(current_page), 'close');
return false;
} else if ( current_page.match(/prod.danawa.com\/bridge\/loadingBridge.html/) ) {
// 다나와 사이트
let paragraph = document.getElementsByTagName('html')[0].innerHTML;
let regex = /(?:goLink\(\')(.*)(?:\'\)\;)/;
let found = paragraph.match(regex);
const requstUrl = myUrl+'?url=' + encodeURIComponent(found[1]) + '&linkprice_aid=' + linkprice_aid + '&referer=' + encodeURIComponent(current_page);
console.log(current_page, typeof(current_page), found[1], 'danawa');
location.href = requstUrl;
return false;
} else if ( current_page.match(/enuri.com\/move\/Redirect.jsp/) ) {
// 에누리 사이트
let paragraph = document.getElementsByTagName('html')[0].innerHTML;
let regex = /(?:location.href\s\=\s\")(.*)(?:";)/;
let found = paragraph.match(regex);
const requstUrl = myUrl+'?url=' + encodeURIComponent(found[1]) + '&linkprice_aid=' + linkprice_aid + '&referer=' + encodeURIComponent(current_page);
console.log(current_page, typeof(current_page), found[1], 'enuri');
location.href = requstUrl;
return false;
} else if ( current_page.match(/cr.shopping.naver.com\/adcr.nhn/) ) {
// 지식쇼핑
let paragraph = document.getElementsByTagName('html')[0].innerHTML;
let regex = /(?:targetUrl\s\=\s\")(.*)(?:\"\;)/;
let found = paragraph.match(regex);
const requstUrl = myUrl+'?url=' + encodeURIComponent(found[1]) + '&linkprice_aid=' + linkprice_aid + '&referer=' + encodeURIComponent(current_page);
console.log(current_page, typeof(current_page), found[1], 'naver');
location.href = requstUrl;
return false;
} else if ( current_page.match(/\.slrclub.com/) ) {
// slrclub
console.log(current_page, typeof(current_page), 'slrclub');
for (const element of document.getElementById('userct').querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
if (typeof(url) == 'string') {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
} else if ( current_page.match(/\.clien.net/) ) {
// clien
console.log(current_page, typeof(current_page), 'clien');
for (const element of document.querySelector('.post_content').querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
console.log(url, element.textContent, 'data');
if (typeof(url) == 'string') {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
} else if ( current_page.match(/\.ruliweb.com/) ) {
// ruliweb
console.log(current_page, typeof(current_page), 'ruliweb');
for (const element of document.querySelector('.board_main_view').querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
console.log(url, element.textContent, 'data');
if (url !== element.textContent && typeof(url) == 'string') {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
} else if ( current_page.match(/quasarzone.com/) ) {
// quasarzone
console.log(current_page, typeof(current_page), 'quasarzone');
for (const element of document.querySelector('.market-info-view-table').querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
console.log(url, element.textContent, 'quasarzone');
if (url !== element.textContent && typeof(url) == 'string') {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
element.setAttribute('target', '_blank');
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
} else {
// 뽐뿌
for (const element of document.querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
if (url !== element.textContent && typeof(url) == 'string') {
if ( (url.match(/s.ppomppu/) && !element.textContent.match(/s.ppomppu/)) || url.match(/click.linkprice.com/) || url.match(/lpweb.kr/) || url.match(/linkmoa.kr/) || url.match(/lase.kr/) || url.match(/bestmore.net/) || url.match(/newtip.net/) || url.match(/amazon./)) {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
}
}
})();
// @name Linkprice Paralyzer
// @namespace
// @version 0.4.1
// @description Linkprice Paralyzer
// @author You
// @match *://*/*
// @grant none
// @date 2021.3.23
// ==/UserScript==
let myUrl = 'http://193.123.238.64/linkprice.php';
let linkprice_aid = 'A100019377';
let current_page = document.location.href;
let linkprice_own_code = current_page.match(/A\d{9}/);
// location 방식 커뮤니티 처리 코드
if (linkprice_own_code && linkprice_aid != linkprice_own_code && current_page.match(/click.linkprice.com\/click.php/)) {
alert(linkprice_own_code + '가 본인코드(' + linkprice_aid +')가 아닙니다.\n점검 화면으로 이동합니다.');
let regex = /tu=(.*)/;
let tu = current_page.match(regex);
const requstUrl = myUrl+'?url=' + encodeURIComponent(tu[1]) + '&linkprice_aid=' + linkprice_aid + '&referer=' + encodeURIComponent(current_page);
location.href = requstUrl;
}
// 링크
(async function() {
'use strict';
if (document.readyState === 'loading') {
await new Promise(resolve => {
document.addEventListener('DOMContentLoad', () => resolve(), { once: true });
});
}
/**
* Paralyze Linkprice.
*/
if ( current_page.match(/\.amazon./) || current_page.match(/\.google./) || current_page.match(/193\.123\.238\.64/) ) {
// 검색 및 본사이트는 제외
console.log(current_page, typeof(current_page), 'close');
return false;
} else if ( current_page.match(/prod.danawa.com\/bridge\/loadingBridge.html/) ) {
// 다나와 사이트
let paragraph = document.getElementsByTagName('html')[0].innerHTML;
let regex = /(?:goLink\(\')(.*)(?:\'\)\;)/;
let found = paragraph.match(regex);
const requstUrl = myUrl+'?url=' + encodeURIComponent(found[1]) + '&linkprice_aid=' + linkprice_aid + '&referer=' + encodeURIComponent(current_page);
console.log(current_page, typeof(current_page), found[1], 'danawa');
location.href = requstUrl;
return false;
} else if ( current_page.match(/enuri.com\/move\/Redirect.jsp/) ) {
// 에누리 사이트
let paragraph = document.getElementsByTagName('html')[0].innerHTML;
let regex = /(?:location.href\s\=\s\")(.*)(?:";)/;
let found = paragraph.match(regex);
const requstUrl = myUrl+'?url=' + encodeURIComponent(found[1]) + '&linkprice_aid=' + linkprice_aid + '&referer=' + encodeURIComponent(current_page);
console.log(current_page, typeof(current_page), found[1], 'enuri');
location.href = requstUrl;
return false;
} else if ( current_page.match(/cr.shopping.naver.com\/adcr.nhn/) ) {
// 지식쇼핑
let paragraph = document.getElementsByTagName('html')[0].innerHTML;
let regex = /(?:targetUrl\s\=\s\")(.*)(?:\"\;)/;
let found = paragraph.match(regex);
const requstUrl = myUrl+'?url=' + encodeURIComponent(found[1]) + '&linkprice_aid=' + linkprice_aid + '&referer=' + encodeURIComponent(current_page);
console.log(current_page, typeof(current_page), found[1], 'naver');
location.href = requstUrl;
return false;
} else if ( current_page.match(/\.slrclub.com/) ) {
// slrclub
console.log(current_page, typeof(current_page), 'slrclub');
for (const element of document.getElementById('userct').querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
if (typeof(url) == 'string') {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
} else if ( current_page.match(/\.clien.net/) ) {
// clien
console.log(current_page, typeof(current_page), 'clien');
for (const element of document.querySelector('.post_content').querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
console.log(url, element.textContent, 'data');
if (typeof(url) == 'string') {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
} else if ( current_page.match(/\.ruliweb.com/) ) {
// ruliweb
console.log(current_page, typeof(current_page), 'ruliweb');
for (const element of document.querySelector('.board_main_view').querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
console.log(url, element.textContent, 'data');
if (url !== element.textContent && typeof(url) == 'string') {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
} else if ( current_page.match(/quasarzone.com/) ) {
// quasarzone
console.log(current_page, typeof(current_page), 'quasarzone');
for (const element of document.querySelector('.market-info-view-table').querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
console.log(url, element.textContent, 'quasarzone');
if (url !== element.textContent && typeof(url) == 'string') {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
element.setAttribute('target', '_blank');
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
} else {
// 뽐뿌
for (const element of document.querySelectorAll('a').values()) {
const nextPart = element.nextElementSibling;
const url = element.getAttribute('href');
if (url !== element.textContent && typeof(url) == 'string') {
if ( (url.match(/s.ppomppu/) && !element.textContent.match(/s.ppomppu/)) || url.match(/click.linkprice.com/) || url.match(/lpweb.kr/) || url.match(/linkmoa.kr/) || url.match(/lase.kr/) || url.match(/bestmore.net/) || url.match(/newtip.net/) || url.match(/amazon./)) {
const requstUrl = myUrl+'?url=' + encodeURIComponent(element.textContent) + '&linkprice_aid=' + linkprice_aid;
console.log(requstUrl, typeof(requstUrl));
element.setAttribute('href', requstUrl);
if (nextPart) {
nextPart.innerHTML = '<a href="'+element.textContent+'" target="_blank">Paralyzer Link</a>';
}
}
}
}
}
})();
0.2 업데이트
링크프라이스 다중 도메인 지원
알리 링크도 성공적으로 지원합니다.
※ 자료현황 ※
등록일 : 2020-06-04 14:52:31 / 문서노출 : 884 / 다운로드 0
※ 파일 다운로드 ※
파일 이름 : 6d4e617106dc0f.mp4 (405.7KB)